GoFundMe GraphQL API

Welcome

The GoFundMe API enables partners to allow their users to create fundraiser pages without ever leaving the website, retrieve fundraiser and donation data to report and display, search through supported GoFundMe charities, and (coming soon) integrate donations and fundraiser search & discovery capabilities into their platforms.

By using GoFundMe's API, you're not just coding; you're contributing to a global movement of mutual support, one line of code at a time.

Getting started

Welcome to our platform! This guide will help you get started with our services.

Step 1: Log in to Partner page

  1. Go to the Partner page.
  2. Log in with your credentials.
  3. If you can't log in or can't find your company, contact GoFundMe support for assistance.

Step 2: Get your Partner code

  1. Once you can see your partner dashboard, you should see a referral link at the bottom of the dashboard e.g. https://gofundme.com/partners/create/{code}
  2. The last segment of that link is your partnership's unique referral code

Step 3: Create an API key

  1. Click on your company button in the top right corner.
  2. Select "Account".
  3. At the bottom, you have the option to create an API key.
  4. Create a new API key and save it somewhere secure, as you will only be able to view it once.

Step 4: Set up your request

  1. Open Postman (or your preferred tool for sending POST requests).
  2. Set the request type to POST.
  3. Use the URL https://graphql.gofundme.com/graphql.
  4. Add headers:
    • x-partner-code: Your partner code
    • x-api-key: Your API key
  5. Add your GraphQL query as the POST body (see example query below)
  6. Send the request
curl --location 'https://graphql.gofundme.com/graphql' \
--header 'x-partner-code: YOUR_PARTNER_CODE' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{"query":"query { partner { code name}}"}'
query {
   partner {
    code
    name
  }
}

If you provided your key correctly, you should get back a response containing your partnership's name and code.

{
  "data": {
    "partner": {
      "code": "GFM",
      "name": "GoFundMe"
    }
  }
}

Next steps

Congratulations! You have successfully completed the getting started guide. Here are some next steps to explore:

Searching for charities

This guide will help you get started with searching for charities supported by GoFundMe or retrieving specific charity details using the nonprofit’s PPGF ID.

How it works

The charitySearch query allows you to retrieve a list of charities that GoFundMe supports based on keywords. This can be used to offer users an option to search for charities to select as a beneficiary for their fundraiser.

The charityByPaypalNonprofitId query allows you to retrieve details of a specific charity using the PPGF ID of that nonprofit. This endpoint is useful for determining which GoFundMe ID a charity has if a pre-selected charity will be the beneficiary of the fundraiser.

Example use cases

charitySearch

Let’s say you want to allow your users to search for any nonprofit to fundraiser for out of the list of available GoFundMe beneficiaries in a particular country. Pass the user’s search term into charitySearch and display the corresponding response back to the user to allow them to select which charity they would like to fundraise for. We encourage using the charity’s npoId (PPGF ID) in the fundraiserCreateDraft mutation.

Search for Red Cross with a country filter GB and return:

  • GoFundMe ID
  • PPGF ID
  • Charity Name
  • Charity Country

Query example:

{
  charitySearch(searchTerm: "red cross", filter: {
    countryCode: "GB"
  }) {
    id
    npoId
    name
    country
  }
}

Response:

{
  "data": {
    "charitySearch": [
      {
        "id": "4",
        "npoId": "12345",
        "name": "British Red Cross",
        "country": "GB"
      }
    ]
  }
}

charityByPaypalNonprofitId

Now let’s say you want to enable one (or several) pre-selected charities to the beneficiary. To find the GoFundMe ID for that specific charity, to use as a CharityInput in fundraiserCreateDraft, query charityByPaypalNonprofitId using the corresponding PPGF ID as a parameter.

Search a charity given its PPGF ID and return:

  • GoFundMe ID
  • Charity Name
  • Charity Description

Query example:

{
  charityByPaypalNonprofitId(paypalNonprofitId: 14886) {
    npoId
    name
  }
}

Response:

{
  "data": {
    "charityByPaypalNonprofitId": {
      "npoId": "14886",
      "name": "British Red Cross"
    }
  }
}

Connecting to GoFundMe via oAuth

When working with the GoFundMe API your application may need to perform actions directly on behalf of a user. Each user will need to authenticate with GoFundMe to verify their identity and to give your application permission to use and access their data.

OAuth 2.0 is a protocol that allows third-party applications to authenticate with APIs. OAuth 2.0 facilitates two main actions: obtaining an access token through user authorization, and using that access token to make API requests. At the end of a successful OAuth 2.0 exchange, an access token is returned to your application. You will need to submit this token with each API request in order to properly identify your application and access end-user data in a secure manner.

Your application does not need to store or transmit user account names or passwords, but instead relies on application credentials in the form of a Client ID and Client Secret that are unique to your application. The OAuth 2.0 protocol uses these credentials as part of an authorization step in which the user chooses to allow (or deny) your application access their data in GoFundMe. An end user may revoke access granted to your application at any time.

If you are brand new to OAuth 2.0, you can review the official OAuth 2.0 specification. See their Community Resources section for some simplified explanations.

Credentials

There are two credentials that you will need to exercise the OAuth 2.0 Authorization Code Flow: Client ID and Client Secret. You can reach out to GoFundMe to obtain these. Your Client Secret is sensitive and should be stored securely. Never expose your Client Secret in client-facing code e.g. a browser or installed mobile app.

To initiate an OAuth2.0 authorization code flow, you can construct and direct your user to the authorize URL:

https://auth.gofundme.com/oauth2/v1/apps/authorize?response_type=code&client_id={client_id}&redirect_uri={redirect_uri}&scope=openid%20fundraiser:create%20fundraiser:edit&state={state}

Request Parts

  • response_type=code: This indicates that you are initiating the Authorization Code Flow (which is the only flow we support)
  • client_id: This tells us which client is making the request, and allows us to display your branding on our consent page
  • redirect_uri: This is where the user will be automatically redirected upon completing the consent flow
  • scope: These are the specific permissions that you are requesting to perform on behalf of a user. For instance, the scope fundraiser:create will let you create a fundraiser directly on behalf of a user
    • openid: includes the OIDC id_token in the token response
    • fundraiser:create: needed for fundraiserCreateDraft
    • fundraiser:edit: needed for fundraiserPublish
    • fundraiser:view: needed for viewer.involvedFundraisers
  • state: The state parameter helps to mitigate CSRF attacks, and can also provide you a way to store state that you want to be returned in the redirect. This value should be unique for each new call to /authorize

Token Exchange

Once a user authenticates and completes the consent flow, they will be redirected back to the redirect_uri that was provided to the /authorize request along with an additional code query parameter: {redirect_uri}?code={code}&state={state}

Note: the state value will be identical to what was initially provided to /authorize Using the received code in combination with your Client Secret you can now use the /token endpoint to retrieve an access_token which allows you to act specifically on behalf of the consenting user.

For this request to succeed, you will need to provide your Client ID and Client Secret using the Authorization header in the following base64 encoded format:

Authorization: Basic <Base64(client_id:client_secret)>

For example, with a client_id of 123 and client_secret secret, the expected Authorization header becomes: Authorization: Basic MTIzOnNlY3JldA==

Note: MTIzOnNlY3JldA== is 123:secret base64 encoded.

Additionally, you will need to provide the code in the POST body. A complete example request for the above scenario would look like:

curl --location '<https://auth.gofundme.com/oauth2/v1/apps/token>' \\
--header 'Authorization: Basic MTIzOnNlY3JldA==' \\
--header 'Content-Type: application/x-www-form-urlencoded' \\
--data-urlencode 'grant_type=authorization_code' \\
--data-urlencode 'code=3fa0ed2389a5492e94626606ccb0f9e35deed098cb3dde2abce59f2c508132a6'

The response will follow the format:

{
    "access_token": "{jwt}",
    "token_type": "Bearer",
    "refresh_token": "{jwt}",
    "id_token": "{jwt}",
    "expires_in": 600
}

These tokens are short-lived, and intended to be ephemeral. In the case that a user revokes their consent to your application, your tokens will become invalid.

Using Access Tokens

Once you have obtained an access_token, you will be able to make requests directly on behalf of your user. You will only be able to make requests that fall within what the user consented to during the /authorize step.

To make a request on behalf of a user, you simply need to provide the access_token as an Authorization header following the format: Authorization: Bearer {access_token}

Having done that, you will be able to perform fundraiserCreateDraft (see Creating Fundraisers via API) or other mutations directly on behalf of the user.

A complete example request looks like:

curl --location '<https://graphql.gofundme.com/graphql>' \\
--header 'Authorization: Bearer {access_token}' \\
--header 'Content-Type: application/json' \\
--data-raw '{
  "query": "mutation fundraiserCreateDraft($title: String!) {
    fundraiserCreateDraft(input: {
      title: $title
    }) {
      fundraiser {
        title
      }
    }
  }",
  "variables": {
    "title": "My Fundraiser Title"
  }
}'

Creating and launching fundraisers via API

This guide will help you get started with programmatically creating and publishing fundraisers on GoFundMe.

How it works

The fundraiserCreateDraft mutation allows you to create a draft for a new fundraiser. The partnerPhotoUpload mutation is used in the create process to upload an image and then supply the fundraiserCreateDraft with an image URL.

The fundraiserPublish mutation allows you to publish the created fundraiser. The fundraiser will not be live to the user until it is published.

Example use cases

partnerPhotoUpload

First, upload an image to be used as the cover media for the fundraiser, using the partnerPhotoUpload mutation. Because the request must be multipart/form-data, how your query is structured will vary based on which graphql client you are using. Regardless of which client you use, you must also provide graphql-require-preflight: true on this request because it is multipart.

CURL example:

curl --location 'https://graphql.gofundme.com/graphql' \
--header 'graphql-require-preflight: true' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'x-partner-code: YOUR_PARTNER_CODE' \
--form 'operations={"query":"mutation partnerPhotoUpload($input: Upload!) { partnerPhotoUpload(input: $input) { id url fileSize fileType createdAt}}", "variables":{"input":null}}'
--form 'map={"0": ["variables.input"]}' \
--form '0=@"/path/to/local/file/file.png"'

Response:

{
    "data": {
        "partnerPhotoUpload": {
            "id": "59",
            "url": "https://www.gofundme.com/partnerassets/pitdev/partner-uploads/1722550606/ca7a4e16-5ac6-4c18-a1be-7bcce969bd08.jpeg",
            "fileSize": 15273,
            "fileType": "image/jpeg",
            "createdAt": "2024-08-01T17:16:47.000-05:00"
        }
    }
}

fundraiserCreateDraft

Then create a draft fundraiser, calling the fundraiserCreateDraft mutation with required inputs. Note: use the URL from the response of partnerPhotoUpload as the mediaUrl.

  • country
  • category
  • beneficiaryType
  • charity (if beneficiaryType=CHARITY)
  • postalCode
  • goalAmount
  • title
  • description (note: at the moment we do not support full HTML fundraiser descriptions, including emojis)
  • mediaUrl

Mutation example (charity fundraiser):

mutation {
  fundraiserCreateDraft(input: {
    title: "A Charity Fundraiser"
    category: MEDICAL
    charity: {
      paypalNonprofitId: 14886
    }
    country: "GB"
    postalCode: "E1 8RU"
    goalAmount: 5000
    beneficiaryType: CHARITY
    mediaUrl: "https://www.gofundme.com/partnerassets/pitdev/partner-uploads/1722481246/5a20d214-6685-4348-9789-57fd1b80d0bd.jpeg"
    partnerAffiliation: {
      sourceApplication: "Another Application"
    }
    description: "We are raising money for the British Red Cross. Please show your support by donating and sharing this fundraiser with your community."
  }) {
    fundraiser {
      slug
      fundId
      title
    }
    userErrors {
      field,
      message
    }
  }
}

To create a fund on behalf of the user, use the PartnerExternalOrganizerInput. This indicates that the fundraiser is being created by the partner, on the user's behalf.

FundraiserInput: {
  PartnerExternalOrganizerInput: {
    firstName: "John",
    lastName: "Doe",
    email: "johndoe@gmail.com",
    emailOptIn: true,
    locale: "en-US"
  }
}

Once published, the API will return a FundraiserResponse object. Inside, the FundraiserResponse.Fundraiser.PartnerExternalInput.organizerInviteUrl field contains a unique URL which should be shared with the user so they can officially claim the fundraiser and connect it to their GoFundMe account. For best results, provide the claim link to the user in your UI. GoFundMe will also send this link via email to the user to maximize the claim experience touchpoints.

Important: the fundraiser will not be fully associated to their GoFundMe account until the user completes the claim process, but they can still fundraise as normal.

Mutation example (individual fundraiser):

mutation {
  fundraiserCreateDraft(input: {
    title: "A Personal Fundraiser"
    category: EMERGENCY
    country: "GB"
    postalCode: "E1 8RU"
    goalAmount: 5000
    beneficiaryType: YOURSELF
    mediaUrl: "https://www.gofundme.com/partnerassets/pitdev/partner-uploads/1722481246/5a20d214-6685-4348-9789-57fd1b80d0bd.jpeg"
    partnerAffiliation: {
      sourceApplication: "Another Application"
    }
    description: "I'm rasing money for my school's wildfire relief efforts. Please show your support by donating and sharing this fundraiser with your community."
  }) {
    fundraiser {
      slug
      fundId
      title
    }
    userErrors {
      field,
      message
    }
  }
}

Response:

{
  "data": {
    "fundraiserCreateDraft": {
      "fundraiser": {
        "slug": "e5957e20-5335-4b8c-b1e3-cd8fc8d5d112",
        "fundId": "59024133",
        "title": "A Charity Fundraiser"
      },
      "userErrors": []
    }
  }
}

fundraiserPublish

To publish the draft fundraiser, use the fundraiserPublish mutation with the fundId from fundraiserCreateDraft as the input.

Mutation example:

mutation {
  fundraiserPublish(id: 59024133) {
    userErrors {
      message
    }
    fundraiser {
      title
      slug
      fundId
    }
  }
}

Response:

{
  "data": {
    "fundraiserPublish": {
      "userErrors": [],
      "fundraiser": {
        "title": "A Charity/ Personal Fundraiser",
        "slug": "a-fundraiser-slug",
        "fundId": "59024133"
      }
    }
  }
}

Additional examples

Automated Goals

Smart Goals is an optional feature that helps high-performing fundraisers raise more by automatically increasing the goal amount once it has been met or surpassed. This gradual adjustment helps maintain momentum and encourages continued donations without the organizer needing to take action.

To enable Smart Goals, use the smartGoalsEnabled field. This feature can be turned off at any time by the fundraiser organizers and by default is off unless explicitly enabled.

FundraiserInput: {
  smartGoalsEnabled: true
}

If Smart Goals are enabled, we recommend showing this copy to the user so they are aware why their goal has changed:

GoFundMe will use data from similar fundraisers to gradually adjust your goal as donations come in, to increase fundraiser success. You can turn this off at any time.

Communications consent

To let GoFundMe contact the organizer with fundraiser best practices, tips, and coaching, include this when creating the fundraiser:

partnerExternalOrganizerInput: {
  emailOptIn: true
}

This allows us to support users directly—improving fundraiser outcomes and increasing the likelihood of success. It’s especially helpful for new organizers who may not know where to start.

Please use the following standard consent language for users to launch their fundraisers:

By clicking on the GoFundMe button above, you agree to have your submitted information used to create a fundraiser on the third-party website or app of our partner GoFundMe, and for GoFundMe to use your information to contact you. You acknowledge that GoFundMe will process your information in accordance with its privacy notice.


If you’re creating a charity-linked fundraiser, and you’d like the nonprofit to receive basic information about the fundraiser creator (such as name and email) so they can provide support or say thank you, include the following.
FundraiserInput: {
  npoMarketingConsent: true
}

This gives the nonprofit visibility into who’s creating fundraisers on their behalf and enables them to deepen relationships with their supporters.

Working with test data

When creating fundraisers for development or testing purposes only, please use the isTestData field.

PartnerAffiliation: {
  isTestData: true
}

This ensures that fundraisers won't appear in GoFundMe search or other public discovery surfaces, that test donations are excluded from core metrics, and a clean separation from production fundraisers.

To further reinforce that these fundraisers are for testing, we recommend including the word "test" or "Test" in the fundraiser title (example: Test Fundraiser for "Partner Name").

The Partner referral flow is designed to enable partners to refer users to GoFundMe to create fundraisers with minimal development effort on the partner’s end. This is achieved by using specific URL query parameters to pre-fill information where possible, providing a streamlined experience for users and removing steps in the GoFundMe creation user flow.

These fundraisers are attributed to the Partner who refers them through their partnerCode. Attributed fundraisers and donations are accessible in the Partner Dashboard.

How it works

Organizations can refer their users to the Partner flow by appending URL query parameters to their GFM partner link (see partner.gofundme.com for the URL). These query parameters pre-fill specific fields on the fundraiser, reducing the amount of manual input required, and improving the onboarding experience for users.

Below are the supported query parameters.

Parameter Required Type Description          
zip_code optional number Zip code of the organizer/ fundraiser
country required string Country code of the organizer’s fundraiser (ex: US)
beneficiary_type optional string Beneficiary of the organizer’s fundraiser. Defaults to YOURSELF

Options:
- YOURSELF
- SOMEONE_ELSE
category optional string Category of the fundraiser. See category list
service_date optional datetime (UTC) string Memorial date of the fundraiser. Should only be used with the MEMORIALS category
tp_id optional string A unique external identifier provided by the partner to identify users on GoFundMe’s system. It is used in tandem with other identifiers to ensure a precise mapping of users



Information always collected on GoFundMe (not by the Partner)

Parameter Description
Goal amount Target amount to raise
Image Main image to display on the fundraiser page
Title Title/ name of the fundraiser
Story Description of the fundraiser

Examples

Create a Fundraiser with no query params
If no query parameters are passed along with the Partner referral link then the user will be redirected to gofundme.com/create and go through the regular GoFundMe creation process.

https://www.gofundme.com/partners/create/{partnerCode}

Create a Fundraiser with just country as a param
This is the minimum viable set of query parameters to create a draft fundraiser using the streamlined Partner flow. This query uses the required country parameter.

https://www.gofundme.com/partners/create/{partnerCode}?country=US

Create a Fundraiser with country, zip_code, category, beneficiary_type as params

https://www.gofundme.com/partners/create/{partnerCode}?country=US&zip_code=92618&category=Animals&beneficiary_type=YOURSELF

Create a Fundraiser with category, category, service_date, & tp_id as params

https://www.gofundme.com/partners/create/{partnerCode}?country=US&category=Memorials&service_date=2025-01-03T10%3A15%3A30Z&tp_id=01234

Retrieving donations/ fundraisers

This guide will help you get started with querying data to retrieve all the fundraisers or donations associated with fundraisers that were published via your GoFundMe partner account.

How it works

The partner.fundraiser query allows you to retrieve all fundraisers associated with your partner account. The fundraiser.donations query allows you to retrieve all donations to a given fundraiser. The partner.donations query allows you to retrieve all donations to all fundraisers associated with your partner account.

Example use cases

partner.fundraisers

To query all fundraisers associated with your partner account partner.fundraisers.

Query example:

query {
  partner {
    fundraisers {
      edges {
       node {
         title
         description
       }
      }
    }
  }
}

Response:

{
  "data": {
    "partner": {
      "fundraisers": {
        "edges": [
          {
            "node": {
              "title": "Partner Fundraiser 1",
              "description": "A fundraiser description for a test campaign"
            }
          },
          {
            "node": {
              "title": "Partner Fundraiser 2",
              "description": "Another description for a test campaign"
            }
          }
        ]
      }
    }
  }
} 

fundraiser.donations

To query all donations to one particular fundraiser, use fundraiser.donations. Use pagination and hasNextPage to determine when you’ve reached the end of a connection.

Query example:

query {
  fundraiser(slug: "example-campaign") {
    donations {
      pageInfo {
        hasNextPage
        hasPreviousPage
        startCursor
      }
      edges {
        cursor
        node {
          name
          amount {
            currencyCode
            amount
          }
          createdAt
        }
      }
    }
  }
}

Response:

{
  "data": {
    "fundraiser": {
      "donations": {
        "pageInfo": {
          "hasNextPage": true,
          "hasPreviousPage": false,
          "startCursor": "RG9uYXRpb246aWQ6NzYyODM4OTI1"
        },
        "edges": [
          {
            "cursor": "RG9uYXRpb246aWQ6NzYyODM4OTI1",
            "node": {
              "name": "Test Donor",
              "amount": {
                "currencyCode": "USD",
                "amount": 5
              },
              "createdAt": "2023-03-17T12:40:33.000-05:00"
            }
          },
          {
            "cursor": "RG9uYXRpb246aWQ6NzYyODg4ODk1",
            "node": {
              "name": "John Doh",
              "amount": {
                "currencyCode": "USD",
                "amount": 5
              },
              "createdAt": "2023-03-27T16:32:20.000-05:00"
            }
          },
          {
            "cursor": "RG9uYXRpb246aWQ6NzYyODkyODY1",
            "node": {
              "name": "Another Donor",
              "amount": {
                "currencyCode": "USD",
                "amount": 5
              },
              "createdAt": "2023-03-28T13:42:06.000-05:00"
            }
          }
        ]
      }
    }
  }

partner.donations

To query all donations associated with your partner account partner.donations. Use pagination and hasNextPage to determine when you’ve reached the end of a connection.

Query example:

query {
  partner {
    donations {
      pageInfo {
        hasNextPage
        hasPreviousPage
        startCursor
      }
      edges {
       node {
         name
         amount {
          currencyCode
          amount
        }
        fundraiser {
          title
          fundId
        }
       }
      }
    }
  }
}

Response:

{
  "data": {
    "partner": {
      "donations": {
        "pageInfo": {
          "hasNextPage": true,
          "hasPreviousPage": false,
          "startCursor": "RG9uYXRpb246aWQ6NzYxNTg1NjIz"
        },
        "edges": [
          {
            "node": {
              "name": "Archer Woolery",
              "amount": {
                "currencyCode": "USD",
                "amount": 5
              },
              "fundraiser": {
                "title": "Adyen test campaign",
                "fundId": "33760977"
              }
            }
          },
          {
            "node": {
              "name": "Archer Woolery",
              "amount": {
                "currencyCode": "USD",
                "amount": 5
              },
              "fundraiser": {
                "title": "Adyen test campaign",
                "fundId": "33760977"
              }
            }
          },
          {
            "node": {
              "name": "Archer Woolery",
              "amount": {
                "currencyCode": "USD",
                "amount": 5
              },
              "fundraiser": {
                "title": "Adyen test campaign",
                "fundId": "33760977"
              }
            }
          },
          {
            "node": {
              "name": "Product Testing",
              "amount": {
                "currencyCode": "USD",
                "amount": 7
              },
              "fundraiser": {
                "title": "Adyen test campaign",
                "fundId": "33760977"
              }
            }
          },
          {
            "node": {
              "name": "Ksenia Cat",
              "amount": {
                "currencyCode": "USD",
                "amount": 7
              },
              "fundraiser": {
                "title": "Adyen test campaign",
                "fundId": "33760977"
              }
            }
          }
        ]
      }
    }
  }
}

Retrieving a user's fundraisers via OAuth

This guide will help you get started with querying data to retrieve all the fundraisers organized by a user that has consented to share this information with your partner account.

How it works

The viewer.involvedFundraisers query allows you to retrieve fundraisers for the user associated with the OAuth access token you provide. This query will not return data if the access token does not include the fundraiser:view scope.

Example use cases

viewer.involvedFundraisers

Query example:

query {
  viewer {
    involvedFundraisers(
      filter:{
        myRelationships:[ORGANIZER],
        isPublished:true
      },
      first: 50, 
      order:CREATED_AT
    ) {
      edges {
        node {
          fundId
          title
          description
        }
      }
    }
  }
}

Response:

{
  "data": {
    "viewer": {
      "involvedFundraisers": {
        "edges": [
          {
            "node": {
              "fundId": "12345",
              "title": "Test fundraiser 1",
              "description": "test fundraiser description 1"
            }
          },
          {
            "node": {
              "fundId": "123456",
              "title": "Test fundraiser 2",
              "description": "test fundraiser description 2"
            }
          },
          {
            "node": {
              "fundId": "123457",
              "title": "Test fundraiser 3",
              "description": "test fundraiser description 3"
            }
          }
        ]
      }
    }
  }
}

Queries

charityByPaypalNonprofitId

Description

Gets a charity by Paypal Nonprofit ID

Response

Returns a Charity

Arguments

Name Description
paypalNonprofitId - ID! Paypal Nonprofit ID

Query

query charityByPaypalNonprofitId($paypalNonprofitId: ID!) {
  charityByPaypalNonprofitId(paypalNonprofitId: $paypalNonprofitId) {
    addressLine1
    allFundraiserCoverPhotoOptions {
      ...CharityFundraiserPhotoWrapperFragment
    }
    allowsFundraiserCreation
    categoryCode
    charityAggregates {
      ...CharityAggregatesFragment
    }
    city
    claims {
      ...CharityClaimFragment
    }
    country
    currencyCode
    defaultFundId
    description
    details {
      ...CharityDetailsFragment
    }
    donations {
      ...DonationConnectionFragment
    }
    ein
    fundraiserCategory
    fundraiserDefaultPhotos {
      ...FundraiserPhotoFragment
    }
    fundraisers {
      ...FundraiserConnectionFragment
    }
    getIncludeDefaultPhotos
    id
    isSeoIndexable
    logo {
      ...CharityPhotoFragment
    }
    name
    npoId
    paypalActivationStatus
    paypalEnrollmentStatus
    recentDonations {
      ...DonationConnectionFragment
    }
    shouldIncludeInRecommendations
    showFeatures {
      ...ShowFeaturesFragment
    }
    slug
    socials {
      ...CharitySocialFragment
    }
    state
    status
    verifiedAt
    zipCode
  }
}

Variables

{"paypalNonprofitId": 4}

Response

{
  "data": {
    "charityByPaypalNonprofitId": {
      "addressLine1": "abc123",
      "allFundraiserCoverPhotoOptions": [
        CharityFundraiserPhotoWrapper
      ],
      "allowsFundraiserCreation": false,
      "categoryCode": "abc123",
      "charityAggregates": CharityAggregates,
      "city": "abc123",
      "claims": [CharityClaim],
      "country": "abc123",
      "currencyCode": "xyz789",
      "defaultFundId": "4",
      "description": "abc123",
      "details": CharityDetails,
      "donations": DonationConnection,
      "ein": "abc123",
      "fundraiserCategory": "ANIMALS",
      "fundraiserDefaultPhotos": [FundraiserPhoto],
      "fundraisers": FundraiserConnection,
      "getIncludeDefaultPhotos": true,
      "id": 4,
      "isSeoIndexable": true,
      "logo": CharityPhoto,
      "name": "xyz789",
      "npoId": "abc123",
      "paypalActivationStatus": 987,
      "paypalEnrollmentStatus": 987,
      "recentDonations": DonationConnection,
      "shouldIncludeInRecommendations": true,
      "showFeatures": ShowFeatures,
      "slug": "xyz789",
      "socials": CharitySocial,
      "state": "xyz789",
      "status": "ACTIVE",
      "verifiedAt": "2007-12-03T10:15:30Z",
      "zipCode": "abc123"
    }
  }
}

charitySearch

Description

Gets charities with keywords similar to the searchTerm. If searchTerm is not specified, returns top charities by Algolia's ranking score

Response

Returns [Charity!]!

Arguments

Name Description
filter - CharityFilter
searchTerm - String

Query

query charitySearch(
  $filter: CharityFilter,
  $searchTerm: String
) {
  charitySearch(
    filter: $filter,
    searchTerm: $searchTerm
  ) {
    addressLine1
    allFundraiserCoverPhotoOptions {
      ...CharityFundraiserPhotoWrapperFragment
    }
    allowsFundraiserCreation
    categoryCode
    charityAggregates {
      ...CharityAggregatesFragment
    }
    city
    claims {
      ...CharityClaimFragment
    }
    country
    currencyCode
    defaultFundId
    description
    details {
      ...CharityDetailsFragment
    }
    donations {
      ...DonationConnectionFragment
    }
    ein
    fundraiserCategory
    fundraiserDefaultPhotos {
      ...FundraiserPhotoFragment
    }
    fundraisers {
      ...FundraiserConnectionFragment
    }
    getIncludeDefaultPhotos
    id
    isSeoIndexable
    logo {
      ...CharityPhotoFragment
    }
    name
    npoId
    paypalActivationStatus
    paypalEnrollmentStatus
    recentDonations {
      ...DonationConnectionFragment
    }
    shouldIncludeInRecommendations
    showFeatures {
      ...ShowFeaturesFragment
    }
    slug
    socials {
      ...CharitySocialFragment
    }
    state
    status
    verifiedAt
    zipCode
  }
}

Variables

{
  "filter": CharityFilter,
  "searchTerm": "abc123"
}

Response

{
  "data": {
    "charitySearch": [
      {
        "addressLine1": "xyz789",
        "allFundraiserCoverPhotoOptions": [
          CharityFundraiserPhotoWrapper
        ],
        "allowsFundraiserCreation": false,
        "categoryCode": "xyz789",
        "charityAggregates": CharityAggregates,
        "city": "abc123",
        "claims": [CharityClaim],
        "country": "abc123",
        "currencyCode": "xyz789",
        "defaultFundId": 4,
        "description": "xyz789",
        "details": CharityDetails,
        "donations": DonationConnection,
        "ein": "abc123",
        "fundraiserCategory": "ANIMALS",
        "fundraiserDefaultPhotos": [FundraiserPhoto],
        "fundraisers": FundraiserConnection,
        "getIncludeDefaultPhotos": false,
        "id": 4,
        "isSeoIndexable": false,
        "logo": CharityPhoto,
        "name": "xyz789",
        "npoId": "abc123",
        "paypalActivationStatus": 987,
        "paypalEnrollmentStatus": 123,
        "recentDonations": DonationConnection,
        "shouldIncludeInRecommendations": true,
        "showFeatures": ShowFeatures,
        "slug": "xyz789",
        "socials": CharitySocial,
        "state": "xyz789",
        "status": "ACTIVE",
        "verifiedAt": "2007-12-03T10:15:30Z",
        "zipCode": "xyz789"
      }
    ]
  }
}

fundraiser

Description

Gets a fundraiser by slug / url

Response

Returns a Fundraiser

Arguments

Name Description
slug - ID! Fundraiser slug

Query

query fundraiser($slug: ID!) {
  fundraiser(slug: $slug) {
    aiShareTextEnabled
    alerts {
      ...FundAlertsResponseFragment
    }
    areCollectionsDisplayed
    autoFbPostMode
    autoThank {
      ...AutoThankFragment
    }
    campaign {
      ...CampaignFragment
    }
    category
    categoryId
    categoryPredictions {
      ...CategoryPredictionFragment
    }
    charity {
      ...CharityFragment
    }
    charityFundMomentType
    charityFundraiserMomentType
    charityOrganized
    coOrganizerInvites {
      ...CoOrganizerInviteFragment
    }
    coOrganizers {
      ...CoOrganizerConnectionFragment
    }
    coachingActionItemsCompleted24hours
    commentCount
    comments {
      ...CommentConnectionFragment
    }
    commentsEnabled
    commentsOffsetPagination {
      ...CommentConnectionFragment
    }
    currentAmount {
      ...MoneyFragment
    }
    currentNetAmount {
      ...MoneyFragment
    }
    deactivated
    deadline
    defaultSlug
    defaultUrl
    description
    donationCount
    donations {
      ...DonationConnectionFragment
    }
    donationsEnabled
    donationsFromShares {
      ...DonationConnectionFragment
    }
    donationsInLast24HoursCount
    donationsInLast48HoursCount
    donationsOffsetPagination {
      ...DonationConnectionFragment
    }
    enableContact
    encourageRecurringDonations
    expectedBeneficiaryRelation
    fundDescription
    fundId
    fundName
    fundraiserHeartCount
    fundraiserImageUrl
    fundraiserPhoto {
      ...FundraiserPhotoFragment
    }
    galleryImages {
      ...GalleryImagesConnectionFragment
    }
    goalAmount {
      ...MoneyFragment
    }
    goalDeadline
    goalLog {
      ...GoalFragment
    }
    hasDonations
    hasGfmOrgDonation
    heartCount
    id
    inDegradedMode
    inReview
    instagramDeepLink
    isGfmDotOrgFund
    isLaunched
    isLinkedWithMeta
    isPersonalCharity
    isPrivate
    isPublished
    isUkraineFlow
    lastDonationAt
    latestReachOut
    launchDate
    location {
      ...LocationFragment
    }
    mediaId
    mediaType
    mediaUrl
    myRelationships
    npoMarketingConsent
    organizer {
      ...UserFragment
    }
    partner {
      ...PartnerFragment
    }
    partnerCobrandingEnabled
    partnerExternalOrganizer {
      ...PartnerExternalOrganizerFragment
    }
    photo {
      ...FundraiserPhotoFragment
    }
    photoCounts {
      ...PhotoCountsFragment
    }
    photoCropPoints {
      ...PhotoCropPointsFragment
    }
    posterSharingEnabled
    projectType
    publishedAt
    redirectUrl
    serviceDate
    shareHistory {
      ...ShareHistoryConnectionFragment
    }
    shareHistoryActivityCount
    shareStats {
      ...FundShareStatisticsFragment
    }
    slug
    smartGoalsEnabled
    smartGoalsOptIn
    socialShareCount
    socialShareLastUpdate
    state
    suggestedGoalAmount {
      ...SuggestedGoalAmountFragment
    }
    tags
    team {
      ...TeamFragment
    }
    teamMembers {
      ...TeamMemberFragment
    }
    templateId
    thirdPartyId
    title
    topCause {
      ...CauseFragment
    }
    topShareActivity {
      ...ShareHistoryItemFragment
    }
    totalDonations
    totalViews
    turnOffDonations
    uniqueDonorCount
    updateCount
    url
    userDefinedGoalAmount {
      ...MoneyFragment
    }
    videoSharingEnabled
    visibleInSearch
    whyToDonate
    withdrawalsLocked
  }
}

Variables

{"slug": 4}

Response

{
  "data": {
    "fundraiser": {
      "aiShareTextEnabled": false,
      "alerts": FundAlertsResponse,
      "areCollectionsDisplayed": false,
      "autoFbPostMode": false,
      "autoThank": AutoThank,
      "campaign": Campaign,
      "category": "ANIMALS",
      "categoryId": 4,
      "categoryPredictions": [CategoryPrediction],
      "charity": Charity,
      "charityFundMomentType": "BIRTHDAY",
      "charityFundraiserMomentType": "abc123",
      "charityOrganized": true,
      "coOrganizerInvites": [CoOrganizerInvite],
      "coOrganizers": CoOrganizerConnection,
      "coachingActionItemsCompleted24hours": 987,
      "commentCount": 987,
      "comments": CommentConnection,
      "commentsEnabled": false,
      "commentsOffsetPagination": CommentConnection,
      "currentAmount": Money,
      "currentNetAmount": Money,
      "deactivated": false,
      "deadline": "2007-12-03T10:15:30Z",
      "defaultSlug": "abc123",
      "defaultUrl": "abc123",
      "description": "abc123",
      "donationCount": 123,
      "donations": DonationConnection,
      "donationsEnabled": true,
      "donationsFromShares": DonationConnection,
      "donationsInLast24HoursCount": 123,
      "donationsInLast48HoursCount": 123,
      "donationsOffsetPagination": DonationConnection,
      "enableContact": true,
      "encourageRecurringDonations": false,
      "expectedBeneficiaryRelation": "CHARITY",
      "fundDescription": "xyz789",
      "fundId": "4",
      "fundName": "abc123",
      "fundraiserHeartCount": 123,
      "fundraiserImageUrl": Url,
      "fundraiserPhoto": FundraiserPhoto,
      "galleryImages": GalleryImagesConnection,
      "goalAmount": Money,
      "goalDeadline": "2007-12-03T10:15:30Z",
      "goalLog": [Goal],
      "hasDonations": true,
      "hasGfmOrgDonation": true,
      "heartCount": 987,
      "id": "4",
      "inDegradedMode": false,
      "inReview": true,
      "instagramDeepLink": "abc123",
      "isGfmDotOrgFund": true,
      "isLaunched": false,
      "isLinkedWithMeta": true,
      "isPersonalCharity": false,
      "isPrivate": true,
      "isPublished": false,
      "isUkraineFlow": true,
      "lastDonationAt": "2007-12-03T10:15:30Z",
      "latestReachOut": "2007-12-03T10:15:30Z",
      "launchDate": "2007-12-03T10:15:30Z",
      "location": Location,
      "mediaId": "xyz789",
      "mediaType": "FACEBOOK_AWS",
      "mediaUrl": Url,
      "myRelationships": ["ACCEPTED_BENEFICIARY"],
      "npoMarketingConsent": true,
      "organizer": User,
      "partner": Partner,
      "partnerCobrandingEnabled": false,
      "partnerExternalOrganizer": PartnerExternalOrganizer,
      "photo": FundraiserPhoto,
      "photoCounts": PhotoCounts,
      "photoCropPoints": PhotoCropPoints,
      "posterSharingEnabled": true,
      "projectType": "AON",
      "publishedAt": "2007-12-03T10:15:30Z",
      "redirectUrl": "abc123",
      "serviceDate": "2007-12-03T10:15:30Z",
      "shareHistory": ShareHistoryConnection,
      "shareHistoryActivityCount": 123,
      "shareStats": FundShareStatistics,
      "slug": "xyz789",
      "smartGoalsEnabled": false,
      "smartGoalsOptIn": "DISABLED",
      "socialShareCount": 987,
      "socialShareLastUpdate": "2007-12-03T10:15:30Z",
      "state": "ACTIVE",
      "suggestedGoalAmount": SuggestedGoalAmount,
      "tags": ["xyz789"],
      "team": Team,
      "teamMembers": [TeamMember],
      "templateId": 987,
      "thirdPartyId": "xyz789",
      "title": "abc123",
      "topCause": Cause,
      "topShareActivity": ShareHistoryItem,
      "totalDonations": 123,
      "totalViews": 123,
      "turnOffDonations": false,
      "uniqueDonorCount": 123,
      "updateCount": 123,
      "url": "abc123",
      "userDefinedGoalAmount": Money,
      "videoSharingEnabled": false,
      "visibleInSearch": true,
      "whyToDonate": "xyz789",
      "withdrawalsLocked": true
    }
  }
}

fundraisersByThirdPartyId

Description

Gets a list of fundraisers by third party id

Response

Returns [Fundraiser]

Arguments

Name Description
fundTPId - ID! Fundraiser third party id

Query

query fundraisersByThirdPartyId($fundTPId: ID!) {
  fundraisersByThirdPartyId(fundTPId: $fundTPId) {
    aiShareTextEnabled
    alerts {
      ...FundAlertsResponseFragment
    }
    areCollectionsDisplayed
    autoFbPostMode
    autoThank {
      ...AutoThankFragment
    }
    campaign {
      ...CampaignFragment
    }
    category
    categoryId
    categoryPredictions {
      ...CategoryPredictionFragment
    }
    charity {
      ...CharityFragment
    }
    charityFundMomentType
    charityFundraiserMomentType
    charityOrganized
    coOrganizerInvites {
      ...CoOrganizerInviteFragment
    }
    coOrganizers {
      ...CoOrganizerConnectionFragment
    }
    coachingActionItemsCompleted24hours
    commentCount
    comments {
      ...CommentConnectionFragment
    }
    commentsEnabled
    commentsOffsetPagination {
      ...CommentConnectionFragment
    }
    currentAmount {
      ...MoneyFragment
    }
    currentNetAmount {
      ...MoneyFragment
    }
    deactivated
    deadline
    defaultSlug
    defaultUrl
    description
    donationCount
    donations {
      ...DonationConnectionFragment
    }
    donationsEnabled
    donationsFromShares {
      ...DonationConnectionFragment
    }
    donationsInLast24HoursCount
    donationsInLast48HoursCount
    donationsOffsetPagination {
      ...DonationConnectionFragment
    }
    enableContact
    encourageRecurringDonations
    expectedBeneficiaryRelation
    fundDescription
    fundId
    fundName
    fundraiserHeartCount
    fundraiserImageUrl
    fundraiserPhoto {
      ...FundraiserPhotoFragment
    }
    galleryImages {
      ...GalleryImagesConnectionFragment
    }
    goalAmount {
      ...MoneyFragment
    }
    goalDeadline
    goalLog {
      ...GoalFragment
    }
    hasDonations
    hasGfmOrgDonation
    heartCount
    id
    inDegradedMode
    inReview
    instagramDeepLink
    isGfmDotOrgFund
    isLaunched
    isLinkedWithMeta
    isPersonalCharity
    isPrivate
    isPublished
    isUkraineFlow
    lastDonationAt
    latestReachOut
    launchDate
    location {
      ...LocationFragment
    }
    mediaId
    mediaType
    mediaUrl
    myRelationships
    npoMarketingConsent
    organizer {
      ...UserFragment
    }
    partner {
      ...PartnerFragment
    }
    partnerCobrandingEnabled
    partnerExternalOrganizer {
      ...PartnerExternalOrganizerFragment
    }
    photo {
      ...FundraiserPhotoFragment
    }
    photoCounts {
      ...PhotoCountsFragment
    }
    photoCropPoints {
      ...PhotoCropPointsFragment
    }
    posterSharingEnabled
    projectType
    publishedAt
    redirectUrl
    serviceDate
    shareHistory {
      ...ShareHistoryConnectionFragment
    }
    shareHistoryActivityCount
    shareStats {
      ...FundShareStatisticsFragment
    }
    slug
    smartGoalsEnabled
    smartGoalsOptIn
    socialShareCount
    socialShareLastUpdate
    state
    suggestedGoalAmount {
      ...SuggestedGoalAmountFragment
    }
    tags
    team {
      ...TeamFragment
    }
    teamMembers {
      ...TeamMemberFragment
    }
    templateId
    thirdPartyId
    title
    topCause {
      ...CauseFragment
    }
    topShareActivity {
      ...ShareHistoryItemFragment
    }
    totalDonations
    totalViews
    turnOffDonations
    uniqueDonorCount
    updateCount
    url
    userDefinedGoalAmount {
      ...MoneyFragment
    }
    videoSharingEnabled
    visibleInSearch
    whyToDonate
    withdrawalsLocked
  }
}

Variables

{"fundTPId": 4}

Response

{
  "data": {
    "fundraisersByThirdPartyId": [
      {
        "aiShareTextEnabled": false,
        "alerts": FundAlertsResponse,
        "areCollectionsDisplayed": true,
        "autoFbPostMode": false,
        "autoThank": AutoThank,
        "campaign": Campaign,
        "category": "ANIMALS",
        "categoryId": "4",
        "categoryPredictions": [CategoryPrediction],
        "charity": Charity,
        "charityFundMomentType": "BIRTHDAY",
        "charityFundraiserMomentType": "abc123",
        "charityOrganized": true,
        "coOrganizerInvites": [CoOrganizerInvite],
        "coOrganizers": CoOrganizerConnection,
        "coachingActionItemsCompleted24hours": 987,
        "commentCount": 123,
        "comments": CommentConnection,
        "commentsEnabled": false,
        "commentsOffsetPagination": CommentConnection,
        "currentAmount": Money,
        "currentNetAmount": Money,
        "deactivated": true,
        "deadline": "2007-12-03T10:15:30Z",
        "defaultSlug": "abc123",
        "defaultUrl": "abc123",
        "description": "xyz789",
        "donationCount": 123,
        "donations": DonationConnection,
        "donationsEnabled": false,
        "donationsFromShares": DonationConnection,
        "donationsInLast24HoursCount": 987,
        "donationsInLast48HoursCount": 123,
        "donationsOffsetPagination": DonationConnection,
        "enableContact": true,
        "encourageRecurringDonations": false,
        "expectedBeneficiaryRelation": "CHARITY",
        "fundDescription": "abc123",
        "fundId": 4,
        "fundName": "xyz789",
        "fundraiserHeartCount": 123,
        "fundraiserImageUrl": Url,
        "fundraiserPhoto": FundraiserPhoto,
        "galleryImages": GalleryImagesConnection,
        "goalAmount": Money,
        "goalDeadline": "2007-12-03T10:15:30Z",
        "goalLog": [Goal],
        "hasDonations": false,
        "hasGfmOrgDonation": true,
        "heartCount": 123,
        "id": "4",
        "inDegradedMode": false,
        "inReview": true,
        "instagramDeepLink": "abc123",
        "isGfmDotOrgFund": true,
        "isLaunched": false,
        "isLinkedWithMeta": true,
        "isPersonalCharity": true,
        "isPrivate": true,
        "isPublished": false,
        "isUkraineFlow": false,
        "lastDonationAt": "2007-12-03T10:15:30Z",
        "latestReachOut": "2007-12-03T10:15:30Z",
        "launchDate": "2007-12-03T10:15:30Z",
        "location": Location,
        "mediaId": "xyz789",
        "mediaType": "FACEBOOK_AWS",
        "mediaUrl": Url,
        "myRelationships": ["ACCEPTED_BENEFICIARY"],
        "npoMarketingConsent": true,
        "organizer": User,
        "partner": Partner,
        "partnerCobrandingEnabled": true,
        "partnerExternalOrganizer": PartnerExternalOrganizer,
        "photo": FundraiserPhoto,
        "photoCounts": PhotoCounts,
        "photoCropPoints": PhotoCropPoints,
        "posterSharingEnabled": true,
        "projectType": "AON",
        "publishedAt": "2007-12-03T10:15:30Z",
        "redirectUrl": "abc123",
        "serviceDate": "2007-12-03T10:15:30Z",
        "shareHistory": ShareHistoryConnection,
        "shareHistoryActivityCount": 987,
        "shareStats": FundShareStatistics,
        "slug": "abc123",
        "smartGoalsEnabled": false,
        "smartGoalsOptIn": "DISABLED",
        "socialShareCount": 987,
        "socialShareLastUpdate": "2007-12-03T10:15:30Z",
        "state": "ACTIVE",
        "suggestedGoalAmount": SuggestedGoalAmount,
        "tags": ["abc123"],
        "team": Team,
        "teamMembers": [TeamMember],
        "templateId": 123,
        "thirdPartyId": "abc123",
        "title": "abc123",
        "topCause": Cause,
        "topShareActivity": ShareHistoryItem,
        "totalDonations": 123,
        "totalViews": 987,
        "turnOffDonations": false,
        "uniqueDonorCount": 123,
        "updateCount": 123,
        "url": "xyz789",
        "userDefinedGoalAmount": Money,
        "videoSharingEnabled": false,
        "visibleInSearch": true,
        "whyToDonate": "xyz789",
        "withdrawalsLocked": true
      }
    ]
  }
}

partner

Description

Data and Queries that are pertinent to a partner. Some properties under Partner are public, but others require either access to the Partner Dashboard, or a valid API Key. The ID parameter is not required if authenticating via API Key

Response

Returns a Partner

Arguments

Name Description
id - ID

Query

query partner($id: ID) {
  partner(id: $id) {
    allowCobranding
    apiKeys {
      ...PartnerApiKeyFragment
    }
    code
    contactEmail
    defaultCobranding
    designatedRecipient {
      ...DesignatedRecipientFragment
    }
    donations {
      ...DonationConnectionFragment
    }
    fundraisers {
      ...FundraiserConnectionFragment
    }
    id
    isActive
    logoUrl
    metrics {
      ...PartnerMetricsFragment
    }
    name
    oAuthApplication {
      ...OAuthApplicationFragment
    }
    regularLogoUrl
    reports {
      ...PartnerReportFragment
    }
    revenueShare
  }
}

Variables

{"id": 4}

Response

{
  "data": {
    "partner": {
      "allowCobranding": true,
      "apiKeys": [PartnerApiKey],
      "code": "xyz789",
      "contactEmail": "abc123",
      "defaultCobranding": false,
      "designatedRecipient": DesignatedRecipient,
      "donations": DonationConnection,
      "fundraisers": FundraiserConnection,
      "id": "4",
      "isActive": true,
      "logoUrl": Url,
      "metrics": PartnerMetrics,
      "name": "xyz789",
      "oAuthApplication": OAuthApplication,
      "regularLogoUrl": Url,
      "reports": PartnerReport,
      "revenueShare": Decimal
    }
  }
}

viewer

Description

Data and Queries that are pertinent to the current logged-in caller. Returns null for non-authenticated users

Response

Returns a User

Query

query viewer {
  viewer {
    activeEducationCards
    anonymousSupportersCount {
      ...AnonymousSupportersCountResponseFragment
    }
    assignedCountryForPayments
    attributionInfo {
      ...AttributionInfoFragment
    }
    birthday
    charityStorylineResponse {
      ...CustomPromptResultFragment
    }
    claimableFundraisers {
      ...FundraiserFragment
    }
    coachingActionItems {
      ...CoachingActionItemFragment
    }
    coachingTasksForFundraiser {
      ...CoachingTaskCollectionFragment
    }
    coachingTipsForFundraiser
    coachingTipsStreakForFundraiser
    communicationFundraiserPreferences {
      ...PersonCommunicationFundraiserPreferenceFragment
    }
    consent {
      ...PersonConsentFragment
    }
    contactRecipients {
      ...ContactRecipientConnectionFragment
    }
    contactSupporters {
      ...ContactSupporterConnectionFragment
    }
    contactSupportersCount {
      ...ContactSupporterCountResponseFragment
    }
    country
    createdAt
    createdFundraisers {
      ...FundraiserFragment
    }
    detectedLocation {
      ...LocationFragment
    }
    dismissEducationCard
    donation {
      ...DonationFragment
    }
    donations {
      ...DonationConnectionFragment
    }
    donationsFromShares {
      ...DonationConnectionFragment
    }
    email {
      ...EmailInfoFragment
    }
    firstName
    followedCauses {
      ...CausesConnectionFragment
    }
    givingFund {
      ...GivingFundFragment
    }
    givingFundFavorites {
      ...GivingFundFavoriteFragment
    }
    givingFunds {
      ...GivingFundFragment
    }
    hasInternalPermission
    id
    involvedFundraisers {
      ...FundraiserConnectionFragment
    }
    isChampion
    lastName
    latestWatchlistInquiry {
      ...WatchlistInquiryFragment
    }
    locale
    manageDashboardViews
    marketingConsent {
      ...PersonConsentFragment
    }
    notificationFeed {
      ...NotificationActivityConnectionFragment
    }
    oAuthApplications {
      ...PartnerFragment
    }
    peopleYouMayKnow {
      ...PeopleRecommendationsFragment
    }
    personChatDetails {
      ...PersonChatDetailsFragment
    }
    personChatLogin {
      ...PersonChatTokenFragment
    }
    personRolesForFundraiser {
      ...PersonRolesForFundraiserFragment
    }
    phone {
      ...PhoneInfoFragment
    }
    profile {
      ...ProfileFragment
    }
    profileUrl
    providerConnection {
      ...ProviderConnectionFragment
    }
    providerConnections {
      ...ProviderConnectionFragment
    }
    socialPlatformPreferences
    status
    totalDonated {
      ...MoneyFragment
    }
    totalDonatedForACause {
      ...MoneyFragment
    }
    totalDonatedFromCauseShares {
      ...MoneyFragment
    }
    totalDonatedFromShares {
      ...MoneyFragment
    }
    totalDonations
    totalDonationsFromShares
    totalDonorsFromShares
    totalFundraisersSupported
    totalFundraisersSupportedForACause
    totalInspiredDonationAmounts {
      ...MoneyFragment
    }
    totalInspiredDonationAmountsForACause {
      ...MoneyFragment
    }
    totalInspiredDonorsCount
    totalInspiredDonorsCountForACause
    totalViewsFromShares
    unseenNotificationCount
    userId
  }
}

Response

{
  "data": {
    "viewer": {
      "activeEducationCards": ["CHARITABLE_GOAL"],
      "anonymousSupportersCount": AnonymousSupportersCountResponse,
      "assignedCountryForPayments": "US",
      "attributionInfo": AttributionInfo,
      "birthday": "2007-12-03",
      "charityStorylineResponse": CustomPromptResult,
      "claimableFundraisers": [Fundraiser],
      "coachingActionItems": [CoachingActionItem],
      "coachingTasksForFundraiser": [
        CoachingTaskCollection
      ],
      "coachingTipsForFundraiser": ["GOAL_ADJUST_10"],
      "coachingTipsStreakForFundraiser": 123,
      "communicationFundraiserPreferences": [
        PersonCommunicationFundraiserPreference
      ],
      "consent": PersonConsent,
      "contactRecipients": ContactRecipientConnection,
      "contactSupporters": ContactSupporterConnection,
      "contactSupportersCount": ContactSupporterCountResponse,
      "country": "US",
      "createdAt": "2007-12-03T10:15:30Z",
      "createdFundraisers": [Fundraiser],
      "detectedLocation": Location,
      "dismissEducationCard": false,
      "donation": Donation,
      "donations": DonationConnection,
      "donationsFromShares": DonationConnection,
      "email": EmailInfo,
      "firstName": "abc123",
      "followedCauses": CausesConnection,
      "givingFund": GivingFund,
      "givingFundFavorites": [GivingFundFavorite],
      "givingFunds": [GivingFund],
      "hasInternalPermission": false,
      "id": "4",
      "involvedFundraisers": FundraiserConnection,
      "isChampion": false,
      "lastName": "xyz789",
      "latestWatchlistInquiry": WatchlistInquiry,
      "locale": "xyz789",
      "manageDashboardViews": 123,
      "marketingConsent": PersonConsent,
      "notificationFeed": NotificationActivityConnection,
      "oAuthApplications": [Partner],
      "peopleYouMayKnow": PeopleRecommendations,
      "personChatDetails": PersonChatDetails,
      "personChatLogin": PersonChatToken,
      "personRolesForFundraiser": PersonRolesForFundraiser,
      "phone": PhoneInfo,
      "profile": Profile,
      "profileUrl": Url,
      "providerConnection": ProviderConnection,
      "providerConnections": [ProviderConnection],
      "socialPlatformPreferences": ["Copy_Link"],
      "status": "ACTIVE",
      "totalDonated": [Money],
      "totalDonatedForACause": [Money],
      "totalDonatedFromCauseShares": [Money],
      "totalDonatedFromShares": [Money],
      "totalDonations": 987,
      "totalDonationsFromShares": 123,
      "totalDonorsFromShares": 987,
      "totalFundraisersSupported": 987,
      "totalFundraisersSupportedForACause": 987,
      "totalInspiredDonationAmounts": [Money],
      "totalInspiredDonationAmountsForACause": [Money],
      "totalInspiredDonorsCount": 987,
      "totalInspiredDonorsCountForACause": 123,
      "totalViewsFromShares": 123,
      "unseenNotificationCount": 987,
      "userId": "4"
    }
  }
}

Mutations

fundraiserCreateDraft

Description

Create a new fundraiser, which will initially be in a draft state. Use the fundraiserPublish mutation to make a fundraiser publicly visible

Response

Returns a FundraiserResponse

Arguments

Name Description
input - FundraiserInput!

Query

mutation fundraiserCreateDraft($input: FundraiserInput!) {
  fundraiserCreateDraft(input: $input) {
    fundraiser {
      ...FundraiserFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}

Variables

{"input": FundraiserInput}

Response

{
  "data": {
    "fundraiserCreateDraft": {
      "fundraiser": Fundraiser,
      "userErrors": [UserError]
    }
  }
}

fundraiserPublish

Description

Publish a fundraiser

Response

Returns a FundraiserResponse

Arguments

Name Description
id - ID!
input - FundraiserPublishInput

Query

mutation fundraiserPublish(
  $id: ID!,
  $input: FundraiserPublishInput
) {
  fundraiserPublish(
    id: $id,
    input: $input
  ) {
    fundraiser {
      ...FundraiserFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}

Variables

{"id": 4, "input": FundraiserPublishInput}

Response

{
  "data": {
    "fundraiserPublish": {
      "fundraiser": Fundraiser,
      "userErrors": [UserError]
    }
  }
}

fundraiserUpdate

Description

Update a fundraiser Use the fundraiserPublish mutation to make a fundraiser publicly visible

Response

Returns a FundraiserResponse

Arguments

Name Description
id - ID!
input - FundraiserInput!

Query

mutation fundraiserUpdate(
  $id: ID!,
  $input: FundraiserInput!
) {
  fundraiserUpdate(
    id: $id,
    input: $input
  ) {
    fundraiser {
      ...FundraiserFragment
    }
    userErrors {
      ...UserErrorFragment
    }
  }
}

Variables

{
  "id": "4",
  "input": FundraiserInput
}

Response

{
  "data": {
    "fundraiserUpdate": {
      "fundraiser": Fundraiser,
      "userErrors": [UserError]
    }
  }
}

partnerPhotoUpload

Description

Allows a partner to upload a public asset. The content-type for this mutation must be multipart/form-data

Response

Returns a PartnerUpload

Arguments

Name Description
input - Upload! The file to upload

Query

mutation partnerPhotoUpload($input: Upload!) {
  partnerPhotoUpload(input: $input) {
    createdAt
    fileName
    fileSize
    fileType
    id
    url
  }
}

Variables

{"input": Upload}

Response

{
  "data": {
    "partnerPhotoUpload": {
      "createdAt": "2007-12-03T10:15:30Z",
      "fileName": "xyz789",
      "fileSize": 123,
      "fileType": "abc123",
      "id": 4,
      "url": "abc123"
    }
  }
}

Types

Activity

Description

Activity feeds are comprised of individual activities. Each activity will have an actor, verb, object, and optionally a target

Fields

Field Name Description
actor - Actor
attributionId - ID Attribution id corresponding to the actor on the activity
commentCount - Int Count of user comments made on this activity
Arguments
parentCommentsOnly - Boolean

Top-level (parent) comments only, or all comments (including replies)

comments - UserCommentConnection User comments made on this activity
Arguments
after - String
before - String
first - Int
last - Int
order - CommentOrder
parentCommentsOnly - Boolean

Top-level (parent) comments only, or all comments (including replies)

createdAt - DateTime The time the activity was created
id - ID!
isOwnedByViewer - Boolean Determines if the viewer is the owner of the activity
location - Location The location where the activity took place, not present on activities that do not have a location
metadata - ActivityMetadata
object - ActivityObject
reactionCountSummary - [ReactionCount!]! Summary of reaction counts for this activity
target - ActivityTarget
verb - ActivityVerb
viewerReaction - EntityReaction The reaction of the logged in user to this activity. If the logged in user has not reacted, this will be null
visibility - ActivityVisibility The visibility of the activity

Example

{
  "actor": Anonymous,
  "attributionId": "4",
  "commentCount": 987,
  "comments": UserCommentConnection,
  "createdAt": "2007-12-03T10:15:30Z",
  "id": 4,
  "isOwnedByViewer": false,
  "location": Location,
  "metadata": ActivityMetadata,
  "object": Cause,
  "reactionCountSummary": [ReactionCount],
  "target": Cause,
  "verb": "CAUSES_UPDATED",
  "viewerReaction": EntityReaction,
  "visibility": "PRIVATE"
}

ActivityConnection

Fields

Field Name Description
edges - [ActivityEdge]
pageInfo - PageInfo!

Example

{
  "edges": [ActivityEdge],
  "pageInfo": PageInfo
}

ActivityEdge

Fields

Field Name Description
cursor - String
node - Activity

Example

{
  "cursor": "xyz789",
  "node": Activity
}

ActivityMetadata

Fields

Field Name Description
type - ActivityMetadataTypeValues! The metadata type
value - ActivityMetadataValue The metadata value. The structure will differ based on the type of metadata

Example

{
  "type": "PROFILE_CAUSE_ADDED",
  "value": ProfileCauseUpdatedMetadata
}

ActivityMetadataTypeValues

Description

The different kinds of activity metadata types that may appear. Each type of metadata corresponds to a different ActivityVerb and has his own metadata structure

Values

Enum Value Description

PROFILE_CAUSE_ADDED

Metadata type associated with the CAUSE_UPDATED verb

PROFILE_LIST_UPDATED

Metadata type associated with the LIST_UPDATED verb

PROFILE_PIN_ADDED

Metadata type associated with the PIN_UPDATED verb

Example

"PROFILE_CAUSE_ADDED"

ActivityMetadataValue

Description

The different kinds of activity metadata that may appear. Each type of metadata corresponds to a different ActivityVerb

Example

ProfileCauseUpdatedMetadata

ActivityObject

Description

The primary resource associated with an activity. For a donation activity, the object is the donation

Example

Cause

ActivityOrder

Values

Enum Value Description

NEAR_ME

REVERSE_CHRONOLOGICAL

Example

"NEAR_ME"

ActivityTarget

Description

The optional recipient of an activity. For a donation activity, the target is the fundraiser. In cases where there is no resource created by the activity, the object and the target will be the same. For example, when a profile is followed both the object and the target will be the Profile

Types

Union Types

Cause

Charity

Fundraiser

Profile

Example

Cause

ActivityVerb

Description

The action taken in an activity

Values

Enum Value Description

CAUSES_UPDATED

CREATED

DONATED

FOLLOWED

Appears when an entity is followed e.g. profile follow, cause follow

LIST_UPDATED

PIN_UPDATED

POSTED

PUBLISHED

UPDATED

Example

"CAUSES_UPDATED"

ActivityVisibility

Description

The visibility of an activity

Values

Enum Value Description

PRIVATE

Private activities are only visible to the owner

PUBLIC

Public activities are visibile to everyone

Example

"PRIVATE"

Actor

Description

The owner of an activity

Types

Union Types

Anonymous

Charity

GfmHero

NoActor

User

Example

Anonymous

AlertAction

Description

Action associated with an alert

Fields

Field Name Description
cta - String Call-to-action text
webUrl - Url Web URL for the action

Example

{
  "cta": "abc123",
  "webUrl": Url
}

AlertData

Description

Alert data containing detailed alert information

Fields

Field Name Description
action - AlertAction Action associated with the alert
message - String Localized message text
messageData - AlertMessageData Additional data for message formatting
messageKey - String Translation key for the message
severity - String Severity level of the alert
title - String Localized title text
titleKey - String Translation key for the title

Example

{
  "action": AlertAction,
  "message": "xyz789",
  "messageData": AlertMessageData,
  "messageKey": "xyz789",
  "severity": "abc123",
  "title": "xyz789",
  "titleKey": "abc123"
}

AlertMessageData

Description

Additional data for alert message formatting

Fields

Field Name Description
dateDisabled - DateTime Date when something was disabled
dateRefunded - String Date when something was refunded
days - Int Number of days
daysRemaining - Int Number of days remaining
firstName - String First name for personalization

Example

{
  "dateDisabled": "2007-12-03T10:15:30Z",
  "dateRefunded": "xyz789",
  "days": 987,
  "daysRemaining": 123,
  "firstName": "abc123"
}

AlertViewModel

Description

Alert view model containing alert information

Fields

Field Name Description
data - AlertData Alert data containing the actual alert information
type - String Type of the alert (e.g., "alerts")

Example

{
  "data": AlertData,
  "type": "xyz789"
}

Anonymous

Fields

Field Name Description
id - ID!

Example

{"id": "4"}

AnonymousSupportersCountResponse

Description

Anonymous Contact Supporter counts for a fundraiser

Fields

Field Name Description
sharers - Int! Number of anonymous supporters who have shared
viewers - Int! Number of anonymous supporters who have viewed

Example

{"sharers": 987, "viewers": 987}

AttributionInfo

Fields

Field Name Description
teamMemberId - ID The ID of the team member, used for the "referred by" team member feature in checkout

Example

{"teamMemberId": 4}

AutoThank

Description

Represents an auto thank setting for a fundraiser, indicating whether donations should trigger an automatic thank-you email. The thank-you message can be customized, and its activation status can be toggled on/off

Fields

Field Name Description
active - Boolean!
fundId - ID!
id - ID!
message - String!

Example

{
  "active": true,
  "fundId": "4",
  "id": "4",
  "message": "xyz789"
}

Boolean

Description

The Boolean scalar type represents true or false

Campaign

Fields

Field Name Description
categoryOptions - [CampaignCategoryMapping!]
challengeEndDate - DateTime
challengeStartDate - DateTime
challengeTimeframe - Boolean
charities - [Charity]
configuration - CampaignConfiguration
defaultFundraiserDesc - String
defaultFundraiserGoal - Int
defaultFundraiserImageUrl - Url
defaultFundraiserTitle - String
description - String
enableLeaderboards - Boolean
endDate - Date
fundraiserCoachingEmail - Boolean
fundraiserSmartGoal - Boolean
goal - Float
id - ID
imageUrl - Url
incentive - Boolean
metrics - CampaignMetrics
name - String
proCampaignId - ID
startDate - Date

Example

{
  "categoryOptions": [CampaignCategoryMapping],
  "challengeEndDate": "2007-12-03T10:15:30Z",
  "challengeStartDate": "2007-12-03T10:15:30Z",
  "challengeTimeframe": true,
  "charities": [Charity],
  "configuration": CampaignConfiguration,
  "defaultFundraiserDesc": "abc123",
  "defaultFundraiserGoal": 987,
  "defaultFundraiserImageUrl": Url,
  "defaultFundraiserTitle": "xyz789",
  "description": "abc123",
  "enableLeaderboards": false,
  "endDate": "2007-12-03",
  "fundraiserCoachingEmail": false,
  "fundraiserSmartGoal": false,
  "goal": 123.45,
  "id": 4,
  "imageUrl": Url,
  "incentive": false,
  "metrics": CampaignMetrics,
  "name": "xyz789",
  "proCampaignId": "4",
  "startDate": "2007-12-03"
}

CampaignCategoryMapping

Fields

Field Name Description
categoryId - ID
categoryName - String
categoryOptionDescription - String
categoryOptionDisplayName - String
categoryOptionId - ID
categoryOptionName - String
createdAt - Date
selected - Boolean
type - String
updatedAt - Date

Example

{
  "categoryId": "4",
  "categoryName": "abc123",
  "categoryOptionDescription": "abc123",
  "categoryOptionDisplayName": "abc123",
  "categoryOptionId": 4,
  "categoryOptionName": "xyz789",
  "createdAt": "2007-12-03",
  "selected": true,
  "type": "xyz789",
  "updatedAt": "2007-12-03"
}

CampaignConfiguration

Fields

Field Name Description
incentives - [CampaignIncentiveConfiguration]

Example

{"incentives": [CampaignIncentiveConfiguration]}

CampaignIncentiveConfiguration

Description

Campaign Incentive Configuration

Fields

Field Name Description
amountToRaise - Decimal
color - String
image - Url
size - String
type - CampaignIncentiveType

Example

{
  "amountToRaise": Decimal,
  "color": "abc123",
  "image": Url,
  "size": "xyz789",
  "type": "BAG"
}

CampaignIncentiveType

Values

Enum Value Description

BAG

BEANIE

DOG_BANDANA

HAT

MEDAL

T_SHIRT

WATER_BOTTLE

Example

"BAG"

CampaignMetrics

Fields

Field Name Description
totalDonors - Int
totalRaised - Float

Example

{"totalDonors": 987, "totalRaised": 987.65}

CampaignRegistrationInput

Fields

Input Field Description
address - String The user's mailing address
campaignId - ID The ID of the campaign
email - String! The user's email address
emailOptIn - Boolean Whether the user has opted in to receive emails
firstName - String! The user's first name
incentive - String The user's selected incentive data
lastName - String! The user's last name
locale - String The locale for communications in IETF's BCP 47 standard (e.g. en-US)
phone - String The user's phone number
smsOptIn - Boolean Whether the user has opted in to receive sms
tshirtSize - TShirtSize The user's selected T-shirt size

Example

{
  "address": "abc123",
  "campaignId": "4",
  "email": "xyz789",
  "emailOptIn": false,
  "firstName": "abc123",
  "incentive": "abc123",
  "lastName": "abc123",
  "locale": "abc123",
  "phone": "abc123",
  "smsOptIn": false,
  "tshirtSize": "L"
}

CategoryPrediction

Fields

Field Name Description
categoryId - Int The categoryId of the fundraiser
createdAt - DateTime Timestamp when the category prediction was created
externalModelId - String The ID of the model used to determine the prediction
fundId - ID Unique identifier for the fundraiser this prediction is associated with
id - ID! Unique identifier of the category prediction
ranking - Int The rank of the prediction. A lower rank indicates the top prediction
updatedAt - DateTime Timestamp when the category prediction was last updated

Example

{
  "categoryId": 987,
  "createdAt": "2007-12-03T10:15:30Z",
  "externalModelId": "xyz789",
  "fundId": "4",
  "id": 4,
  "ranking": 123,
  "updatedAt": "2007-12-03T10:15:30Z"
}

Cause

Fields

Field Name Description
categoryId - ID ID of the cause's associated category Causes now have multiple categories. Use 'categoryIds' instead.
categoryIds - [ID] ID of the cause's associated top-level and sub-categories
causeActivities - CauseActivityConnection
Arguments
after - String
first - Int
causeActivitiesByFeedGroup - CauseActivityConnection Get activities for this cause filtered by feed group
Arguments
after - String

Cursor for pagination

feedGroup - CauseActivityFeedGroup!

Type of activity feed group to fetch

first - Int

Number of activities to fetch (max 50)

charities - CommunityCharitiesConnection List of active charities associated with this cause/community
Arguments
after - String
before - String
first - Int
last - Int
communityConfiguration - CommunityConfiguration Configuration for the cause/community page
communityType - CommunityType! The type of community this cause represents
createdAt - DateTime When the cause was created
feed - Feed A cause's activity feed (using the shared activity feed structure)
followers - FollowerConnection A cause's followers list (all the followers of the specified cause)
Arguments
after - String
before - String
first - Int
last - Int
order - FollowerOrder
fundraisers - FundraiserConnection List of fundraisers belonging to the cause
Arguments
after - String
before - String
filterType - CauseFundraiserFilterType

Optional filter criteria for fundraisers

first - Int
last - Int
order - FundraiserOrder
query - String

When a search query is provided, results are ordered by text relevance. In this mode, the order parameter is not supported, and only forward pagination is allowed

gfmOrgFundraiser - Fundraiser GFM.org fundraiser associated with a cause
id - ID! ID of a cause
showControls - ShowControls Show controls configuration for the community
slug - String Slug for cause's page
stats - CauseStats Statistics for this cause
status - CauseStatus The status of the cause
totalFollowers - Int! Total number of followers for this cause
updatedAt - DateTime When the cause was most recently updated
visibility - CauseVisibility The visibility of the cause

Example

{
  "categoryId": 4,
  "categoryIds": [4],
  "causeActivities": CauseActivityConnection,
  "causeActivitiesByFeedGroup": CauseActivityConnection,
  "charities": CommunityCharitiesConnection,
  "communityConfiguration": CommunityConfiguration,
  "communityType": "CAUSE",
  "createdAt": "2007-12-03T10:15:30Z",
  "feed": Feed,
  "followers": FollowerConnection,
  "fundraisers": FundraiserConnection,
  "gfmOrgFundraiser": Fundraiser,
  "id": "4",
  "showControls": ShowControls,
  "slug": "xyz789",
  "stats": CauseStats,
  "status": "ACTIVE",
  "totalFollowers": 987,
  "updatedAt": "2007-12-03T10:15:30Z",
  "visibility": "INTERNAL_TEST"
}

CauseActivity

Description

Base interface for all cause activities

Fields

Field Name Description
accountActor - Actor
actor - CauseActivityActor! No longer supported
createdAt - DateTime!
fundraiser - Fundraiser
id - ID!
ownReactions - [CauseActivityReaction!]
reactionCounts - [CauseActivityReactionCount!]
type - CauseActivityFeedGroup!

Possible Types

CauseActivity Types

CauseDonationActivity

CausePostActivity

Example

{
  "accountActor": Anonymous,
  "actor": CauseActivityActor,
  "createdAt": "2007-12-03T10:15:30Z",
  "fundraiser": Fundraiser,
  "id": 4,
  "ownReactions": [CauseActivityReaction],
  "reactionCounts": [CauseActivityReactionCount],
  "type": "EDITORIAL_IMPACTS"
}

CauseActivityActor

Description

An actor for the cause activity. This is the person or entity (e.g. GoFundMe, Jane Doe) that performed the activity

Fields

Field Name Description
imageUrl - Url
name - String!

Example

{
  "imageUrl": Url,
  "name": "xyz789"
}

CauseActivityAsset

Description

Represents a media asset (image, video) attached to a cause activity

Fields

Field Name Description
type - CauseActivityAssetType! The type of asset (image, video, etc.)
url - Url! URL where the asset can be accessed

Example

{"type": "EXTERNAL_WEBPAGE", "url": Url}

CauseActivityAssetType

Description

Types of assets that can be attached to a cause activity

Values

Enum Value Description

EXTERNAL_WEBPAGE

IMAGE

VIDEO

Example

"EXTERNAL_WEBPAGE"

CauseActivityConnection

Description

Connection for cause activities

Fields

Field Name Description
edges - [CauseActivityEdge]
pageInfo - PageInfo!

Example

{
  "edges": [CauseActivityEdge],
  "pageInfo": PageInfo
}

CauseActivityEdge

Description

Edge in the cause activity connection

Fields

Field Name Description
cursor - String
node - CauseActivity

Example

{
  "cursor": "xyz789",
  "node": CauseActivity
}

CauseActivityFeedGroup

Description

Feed group types for cause activities. A feed group is a collection of feeds; here, each feed group corresponds to a different post type

Values

Enum Value Description

EDITORIAL_IMPACTS

EDITORIAL_ORGANIZER_SPOTLIGHTS

ENDORSER_EDITORIALS

FUNDRAISER_DONATION_HIGHLIGHTS

FUNDRAISER_UPDATES

Example

"EDITORIAL_IMPACTS"

CauseActivityReaction

Description

Reaction to an activity

Fields

Field Name Description
accountActor - Actor Actor that performed the reaction
id - ID! ID of the reaction
reaction - CauseActivityReactionType! Type of reaction

Example

{
  "accountActor": Anonymous,
  "id": "4",
  "reaction": "CARE"
}

CauseActivityReactionCount

Description

Reaction count for an activity

Fields

Field Name Description
count - Int!
reaction - CauseActivityReactionType!

Example

{"count": 123, "reaction": "CARE"}

CauseActivityReactionType

Description

Reaction type for an activity

Values

Enum Value Description

CARE

COMMENT

HOPE

INSPIRING

SENDING_LOVE

SUPPORTING_YOU

SYMPATHIES

Example

"CARE"

CauseDonationActivity

Fields

Field Name Description
accountActor - Actor
actor - CauseActivityActor! No longer supported
createdAt - DateTime!
donations - [Donation!]
fundraiser - Fundraiser
id - ID!
ownReactions - [CauseActivityReaction!]
reactionCounts - [CauseActivityReactionCount!]
type - CauseActivityFeedGroup!

Example

{
  "accountActor": Anonymous,
  "actor": CauseActivityActor,
  "createdAt": "2007-12-03T10:15:30Z",
  "donations": [Donation],
  "fundraiser": Fundraiser,
  "id": 4,
  "ownReactions": [CauseActivityReaction],
  "reactionCounts": [CauseActivityReactionCount],
  "type": "EDITORIAL_IMPACTS"
}

CauseEdge

Fields

Field Name Description
cursor - String
node - Cause

Example

{
  "cursor": "xyz789",
  "node": Cause
}

CauseFollowerOrder

Values

Enum Value Description

FOLLOWED_AT

Example

"FOLLOWED_AT"

CauseFundraiserFilterType

Values

Enum Value Description

CLOSE_TO_GOAL

JUST_LAUNCHED

NEEDS_SUPPORT

Example

"CLOSE_TO_GOAL"

CausePostActivity

Description

Post activity in the cause

Fields

Field Name Description
accountActor - Actor
actor - CauseActivityActor! No longer supported
assets - [CauseActivityAsset!]
createdAt - DateTime!
fundraiser - Fundraiser
id - ID!
ownReactions - [CauseActivityReaction!]
reactionCounts - [CauseActivityReactionCount!]
text - String
title - String
type - CauseActivityFeedGroup!

Example

{
  "accountActor": Anonymous,
  "actor": CauseActivityActor,
  "assets": [CauseActivityAsset],
  "createdAt": "2007-12-03T10:15:30Z",
  "fundraiser": Fundraiser,
  "id": 4,
  "ownReactions": [CauseActivityReaction],
  "reactionCounts": [CauseActivityReactionCount],
  "text": "xyz789",
  "title": "abc123",
  "type": "EDITORIAL_IMPACTS"
}

CauseStats

Fields

Field Name Description
charitiesBenefited - Int! Number of charities that have benefited from this cause
createdAt - DateTime! When these stats were created
goalsMet - Int! Number of fundraiser goals for a cause that have been met
totalDonationAmount - Money! Total donation amount across all fundraisers in this cause
totalDonations - Int! Total number of donations across all fundraisers in this cause
totalDonors - Int! Total number of unique donors across all fundraisers in this cause
totalFollowers - Int Total number of followers for this cause
totalFundraisers - Int! Total number of fundraisers in this cause
totalNPOsCount - Int! Number of NPOs tied to the community
totalPeopleWhoHaveShared - Int! Total number of people who have shared fundraisers in this cause
totalSupporters - Int! Combination of donors and people who have shared fundraisers in this cause
updatedAt - DateTime When these stats were last updated

Example

{
  "charitiesBenefited": 987,
  "createdAt": "2007-12-03T10:15:30Z",
  "goalsMet": 987,
  "totalDonationAmount": Money,
  "totalDonations": 123,
  "totalDonors": 987,
  "totalFollowers": 123,
  "totalFundraisers": 987,
  "totalNPOsCount": 123,
  "totalPeopleWhoHaveShared": 123,
  "totalSupporters": 987,
  "updatedAt": "2007-12-03T10:15:30Z"
}

CauseStatus

Values

Enum Value Description

ACTIVE

ARCHIVED

DRAFT

INACTIVE

Example

"ACTIVE"

CauseVisibility

Values

Enum Value Description

INTERNAL_TEST

PRIVATE

PUBLIC

Example

"INTERNAL_TEST"

CausesConnection

Fields

Field Name Description
edges - [CauseEdge]
pageInfo - PageInfo!

Example

{
  "edges": [CauseEdge],
  "pageInfo": PageInfo
}

CausesFilter

Description

Filters for causes being fetched

Fields

Input Field Description
causes - [String] List of cause slugs that should be included

Example

{"causes": ["abc123"]}

Charity

Description

Describes a registered charity that a fundraiser can raise money for

Fields

Field Name Description
addressLine1 - String
allFundraiserCoverPhotoOptions - [CharityFundraiserPhotoWrapper!] Gets all fundraiser cover photos available for the one click fund create feature for a given NPO. This includes NPO-specific images either uploaded by the NPO admin or generated by AI on their behalf. It will include all moment type photos as well. If visibilityMode is set to PERMISSIVE, it will return images with HIDDEN and REPORTED statuses. It will also include default images when NPO has opted out, but with the adminOnlyHiddenPreview flag set to true
Arguments
visibilityMode - CharityFundraiserCoverPhotoVisibilityMode

The request is from the admin page view

allowsFundraiserCreation - Boolean from charity_community
categoryCode - String
charityAggregates - CharityAggregates Total aggregates by charityId
city - String
claims - [CharityClaim] Charity community claim information including status and timestamps
Arguments
approved - Boolean
country - String
currencyCode - String Currency code for the charity
defaultFundId - ID
description - String
details - CharityDetails Charity organization detail
donations - DonationConnection List of donations by charity
Arguments
after - String
before - String
first - Int
last - Int
order - DonationOrder
ein - String
fundraiserCategory - FundraiserCategory The fundraiser category most applicable to this charity. Used to automatically select the category when creating a one-click fundraiser from the NPO page
fundraiserDefaultPhotos - [FundraiserPhoto] The default photos available for use as the campaign photo in one-click fundraiser creation from the NPO page
Arguments
charityFundraiserMomentType - String

Type of moment to check for. If null, uses default CLASSIC. Alternate to momentType enum which will be deprecated in the future

momentType - CharityFundMomentType

Type of charity moment to get specific photos for. Defaults to CLASSIC if not specified. @deprecated(reason: "Use 'charityFundraiserMomentType' field instead to allow more moments in the future.")

fundraisers - FundraiserConnection List of fundraisers, optional list based on charityOrganized flag
Arguments
after - String
before - String
charityOrganized - Boolean
first - Int
last - Int
order - FundraiserOrder
getIncludeDefaultPhotos - Boolean Get the includeDefaultPhotos field from charity community preferences. This field is only available to charity admins
id - ID!
isSeoIndexable - Boolean from charity_community
logo - CharityPhoto
name - String
npoId - String
paypalActivationStatus - Int from charity_community
paypalEnrollmentStatus - Int
recentDonations - DonationConnection List of donations by charity's top 10 funds by last donation date
Arguments
after - String
before - String
first - Int
last - Int
order - DonationOrder
shouldIncludeInRecommendations - Boolean! Get whether the charity should be included in recommendations. Returns true by default when no preferences exist
showFeatures - ShowFeatures Flags to control whether or not certain sections of an NPO page should be shown. These flags can be edited by the charity admin
slug - String
socials - CharitySocial Charity socials links
state - String
status - CharityStatus from charity_community
verifiedAt - DateTime from charity_community
zipCode - String

Example

{
  "addressLine1": "xyz789",
  "allFundraiserCoverPhotoOptions": [
    CharityFundraiserPhotoWrapper
  ],
  "allowsFundraiserCreation": false,
  "categoryCode": "xyz789",
  "charityAggregates": CharityAggregates,
  "city": "abc123",
  "claims": [CharityClaim],
  "country": "xyz789",
  "currencyCode": "abc123",
  "defaultFundId": "4",
  "description": "xyz789",
  "details": CharityDetails,
  "donations": DonationConnection,
  "ein": "abc123",
  "fundraiserCategory": "ANIMALS",
  "fundraiserDefaultPhotos": [FundraiserPhoto],
  "fundraisers": FundraiserConnection,
  "getIncludeDefaultPhotos": true,
  "id": "4",
  "isSeoIndexable": true,
  "logo": CharityPhoto,
  "name": "xyz789",
  "npoId": "xyz789",
  "paypalActivationStatus": 123,
  "paypalEnrollmentStatus": 987,
  "recentDonations": DonationConnection,
  "shouldIncludeInRecommendations": true,
  "showFeatures": ShowFeatures,
  "slug": "abc123",
  "socials": CharitySocial,
  "state": "xyz789",
  "status": "ACTIVE",
  "verifiedAt": "2007-12-03T10:15:30Z",
  "zipCode": "xyz789"
}

CharityAggregates

Fields

Field Name Description
totalDonated - [Money]
totalDonations - Int
totalFundraisers - Int

Example

{
  "totalDonated": [Money],
  "totalDonations": 987,
  "totalFundraisers": 123
}

CharityClaim

Fields

Field Name Description
acceptedClaimBanner - Boolean Whether the user has dismissed the claim banner (the banner that confirms their charity claim was approved). If true, we no longer need to show this approval confirmation banner
claimState - ClaimState! Current state of the charity claim

Example

{"acceptedClaimBanner": false, "claimState": "APPROVED"}

CharityDetails

Fields

Field Name Description
ein - String
mission - String
nteeCode - String
nteeDescription - String
pcsPopulation - [String]
pcsSubjectTran - [String]
rulingYr - Float

Example

{
  "ein": "abc123",
  "mission": "xyz789",
  "nteeCode": "abc123",
  "nteeDescription": "abc123",
  "pcsPopulation": ["abc123"],
  "pcsSubjectTran": ["xyz789"],
  "rulingYr": 987.65
}

CharityDonationSource

Description

Details about the origin of a donation in relation to a charity

Fields

Field Name Description
sourceId - ID The unique identifier of the source
sourcePage - Url A fully qualified URL to the page where the donation originated
sourceType - CharityDonationSourceType Whether the donation came directly through the charity’s community page (DIRECT) or via a supporting fundraiser (FUNDRAISER)

Example

{"sourceId": 4, "sourcePage": Url, "sourceType": "DIRECT"}

CharityDonationSourceType

Description

Indicates how the donation is attributed to a charity

Values

Enum Value Description

DIRECT

FUNDRAISER

Example

"DIRECT"

CharityDonationsFilter

Fields

Input Field Description
dateFrom - DateTime start publishedAt date (inclusive)
dateTo - DateTime end publishedAt date (not inclusive)

Example

{
  "dateFrom": "2007-12-03T10:15:30Z",
  "dateTo": "2007-12-03T10:15:30Z"
}

CharityFilter

Description

Fields for filtering a list of charities

Fields

Input Field Description
activeNpoPageOnly - Boolean Filter for charities with active NPO pages. If true, returns only charities with active NPO pages. If false or null, returns all charities regardless of NPO page status
countryCode - CountryCode Country a charity was started in

Example

{
  "activeNpoPageOnly": false,
  "countryCode": "US"
}

CharityFundMomentType

Description

The type of moment for charity fundraisers

Values

Enum Value Description

BIRTHDAY

Birthday charity fundraiser

CLASSIC

Standard charity fundraiser with no specific moment type

GRADUATION

Graduation charity fundraiser

MEMORIAL

Memorial charity fundraiser

WEDDING

Wedding charity fundraiser

Example

"BIRTHDAY"

CharityFundraiserCoverPhotoVisibilityMode

Values

Enum Value Description

PERMISSIVE

Visibility that includes all photos This includes hidden, reported, and opted-out default images

STANDARD

Default visibility that includes active and approved photos

Example

"PERMISSIVE"

CharityFundraiserFilter

Fields

Input Field Description
dateFrom - DateTime start publishedAt date (inclusive)
dateTo - DateTime end publishedAt date (not inclusive)

Example

{
  "dateFrom": "2007-12-03T10:15:30Z",
  "dateTo": "2007-12-03T10:15:30Z"
}

CharityFundraiserPhotoStatus

Description

The status of an NPO fundraiser cover photo

Values

Enum Value Description

ACTIVE

The photo is active and can be viewed by all users

HIDDEN

The photo is hidden and can only be viewed by charity admins

REPORTED

The photo is reported and may be viewed by charity admins

Example

"ACTIVE"

CharityFundraiserPhotoWrapper

Description

Wrapper for FundraiserPhoto that includes the status of the photo

Fields

Field Name Description
adminOnlyHiddenPreview - Boolean Photo is only visible to npo admins and should be shown in a hidden preview state
npoPhotoId - ID The unique identifier for the photo in the npo photos table
photo - FundraiserPhoto! The photo itself
status - CharityFundraiserPhotoStatus The status of the photo - ACTIVE, HIDDEN, or REPORTED

Example

{
  "adminOnlyHiddenPreview": false,
  "npoPhotoId": 4,
  "photo": FundraiserPhoto,
  "status": "ACTIVE"
}

CharityPhoto

Fields

Field Name Description
intrinsicSize - CharityPhotoIntrinsicSize Deprecated for performance reasons
scaled - CharityPhotoScaled
url - Url

Example

{
  "intrinsicSize": CharityPhotoIntrinsicSize,
  "scaled": CharityPhotoScaled,
  "url": Url
}

CharityPhotoIntrinsicSize

Fields

Field Name Description
height - Int
width - Int

Example

{"height": 987, "width": 123}

CharityPhotoScaled

Fields

Field Name Description
oneByOne120 - Url 3x2-120
sixteenByNine720 - Url 1x1-120
threeByTwo120 - Url

Example

{
  "oneByOne120": Url,
  "sixteenByNine720": Url,
  "threeByTwo120": Url
}

CharitySelectInput

Description

Input for selecting a Charity when creating or updating a Fundraiser. If a charity is provided, a user will not be able to withdraw funds to their own bank account. Instead, the funds will go directly to the Charity. A charity may be referenced though its id, which is a GoFundMe id. Or, it may be referenced through its PayPal Nonprofit id. Supplying multiple values in this input, e.g. a value for both "id" and "paypalNonprofitId", is invalid and will return an error

Fields

Input Field Description
charityFundraiserMomentType - String Type of moment to check for. If null, uses default CLASSIC. Alternate to momentType enum which will be deprecated in the future. Default = "CLASSIC"
id - ID The GoFundMe id of the Charity that will be receiving the proceeds of this fundraiser
momentType - CharityFundMomentType The type of moment associated with this charity fundraiser. Only applicable when creating a fundraiser for a specific charity moment/campaign @deprecated(reason: "Use 'charityFundraiserMomentType' field instead to allow more moments in the future.")
paypalNonprofitId - ID The PayPal Nonprofit id of the Charity that will be receiving the proceeds of this fundraiser

Example

{
  "charityFundraiserMomentType": "abc123",
  "id": "4",
  "momentType": "BIRTHDAY",
  "paypalNonprofitId": "4"
}

CharitySocial

Fields

Field Name Description
blueSky - Url
candid - Url
charityNavigator - Url
custom - Url
discord - Url
facebook - Url
instagram - Url
linkedin - Url
threads - Url
tiktok - Url
twitch - Url
twitter - Url Use 'x' instead.
website - Url
x - Url
youtube - Url

Example

{
  "blueSky": Url,
  "candid": Url,
  "charityNavigator": Url,
  "custom": Url,
  "discord": Url,
  "facebook": Url,
  "instagram": Url,
  "linkedin": Url,
  "threads": Url,
  "tiktok": Url,
  "twitch": Url,
  "twitter": Url,
  "website": Url,
  "x": Url,
  "youtube": Url
}

CharityStatus

Values

Enum Value Description

ACTIVE

BANNED

HIDDEN

INACTIVE

UNKNOWN

Example

"ACTIVE"

ClaimState

Values

Enum Value Description

APPROVED

Claim has been reviewed and approved

DENIED

Claim has been reviewed and denied

EMAIL_NOT_VERIFIED

User has not verified their email so claim process cannot proceed

INFO_REQUESTED

Additional information has been requested from the claimant

PENDING_REVIEW

Claim is awaiting review (default state for low priority claims)

Example

"APPROVED"

CoOrganizerConnection

Description

Contains the list of co-organizers and pagination information

Fields

Field Name Description
edges - [CoOrganizerEdge] A list of edges containing the co-organizers and cursor information
pageInfo - PageInfo! Information to aid in pagination, including hasNextPage and hasPreviousPage flags

Example

{
  "edges": [CoOrganizerEdge],
  "pageInfo": PageInfo
}

CoOrganizerEdge

Description

Contains the cursor and node information for a co-organizer

Fields

Field Name Description
cursor - String A cursor for use in pagination, representing the position of this edge in the connection
node - TeamMember The co-organizer node at this position in the connection

Example

{
  "cursor": "xyz789",
  "node": TeamMember
}

CoOrganizerInvite

Description

Represents an invitation sent to a potential co-organizer for a fundraiser

Fields

Field Name Description
createdAt - DateTime Timestamp when the invitation was created
id - ID Unique identifier for the invitation
invitationUrl - String URL that the invitee can use to accept the invitation
invitedAddress - String Email address or phone number of the person invited to be a co-organizer
invitedAddressType - Int Type of the invited address: 0 = Email, 1 = Phone number, 2 = Magic link
lastSentAt - DateTime Timestamp when the invitation was last sent to the invitee
status - Int Current status of the invitation: 0 = Inactive, 1 = Active, 2 = Accepted
teamId - ID Identifier for the team associated with this invitation
updatedAt - DateTime Timestamp when the invitation was last updated

Example

{
  "createdAt": "2007-12-03T10:15:30Z",
  "id": "4",
  "invitationUrl": "xyz789",
  "invitedAddress": "xyz789",
  "invitedAddressType": 123,
  "lastSentAt": "2007-12-03T10:15:30Z",
  "status": 123,
  "teamId": 4,
  "updatedAt": "2007-12-03T10:15:30Z"
}

CoachingActionItem

Description

An action item represents a call-to-action that GoFundMe is recommending a user take.

This is also known as a "Next Best Action"

Fields

Field Name Description
context - CoachingActionItemContext The product context under which the action item is applicable
contextMetadata - CoachingActionItemMetadata Other metadata values related to actions a user can take for this action item
createdAt - DateTime The timestamp indicating when this action item event was created. Represented as milliseconds since the Unix epoch
events - [CoachingActionItemEvent] The user interaction events for this action item
id - ID! The unique identifier for the action item
isCompleted - Boolean Indicates whether at least one COMPLETED event exists for this action item
isCompletedToday - Boolean Returns true when the most recent COMPLETED event occurred on the same calendar day as the requesting user's time zone
kind - CoachingActionItemKind The kind of this action item
messageVariant - CoachingActionItemMessageVariant The message variant to currently display for this Action Item. This is determined at request time based on relevant context data

Example

{
  "context": "CONTACTS",
  "contextMetadata": ContactNudgeTextActionData,
  "createdAt": "2007-12-03T10:15:30Z",
  "events": [CoachingActionItemEvent],
  "id": 4,
  "isCompleted": true,
  "isCompletedToday": true,
  "kind": CoachingActionItemKind,
  "messageVariant": CoachingActionItemMessageVariant
}

CoachingActionItemCategory

Description

Categories for action items

Values

Enum Value Description

CONTENT_MANAGEMENT

DONOR_ENGAGEMENT

FUNDRAISER_MANAGEMENT

SHARING

Example

"CONTENT_MANAGEMENT"

CoachingActionItemContext

Description

The product context under which the action item is applicable

Values

Enum Value Description

CONTACTS

Indicates the action item is relevant to sharing with contacts / connected accounts

FUNDRAISER

Indicates the action item is relevant to managing a specific fundraiser

Example

"CONTACTS"

CoachingActionItemContextInput

Description

The product context under which the action item is applicable (Input)

Values

Enum Value Description

CONTACTS

Indicates the action item is relevant to sharing with contacts / connected accounts

FUNDRAISER

Indicates the action item is relevant to managing a specific fundraiser

Example

"CONTACTS"

CoachingActionItemEvent

Description

A user interaction event with a coaching action item

Fields

Field Name Description
createdAt - DateTime The timestamp indicating when this action item interaction was created
id - ID! The unique identifier for the action item interaction
kind - CoachingActionItemEventKind The kind of interaction

Example

{
  "createdAt": "2007-12-03T10:15:30Z",
  "id": 4,
  "kind": "COMPLETED"
}

CoachingActionItemEventKind

Description

Represents the kind of user interaction with a coaching action item

Values

Enum Value Description

COMPLETED

The user has completed the action item

DISMISSED

The user has interacted with an element, like a button, that indicates a completion of this action item

SEEN

The user has seen this action item

TAPPED

The user has initially tapped/clicked this action item to view the details

Example

"COMPLETED"

CoachingActionItemFilterInput

Description

Filters for coaching action items

Fields

Input Field Description
context - CoachingActionItemContextInput! The product context under which the action item is applicable
fundraiserId - ID The fundraiser that this action item applies to

Example

{"context": "CONTACTS", "fundraiserId": "4"}

CoachingActionItemKind

Fields

Field Name Description
category - CoachingActionItemCategory The category this action item belongs to
description - String Description of the action item. This is currently unused, as the frontend provides its own text
id - CoachingActionItemKindId The kind of this action item
objective - CoachingActionItemObjective The objective this action item serves

Example

{
  "category": "CONTENT_MANAGEMENT",
  "description": "xyz789",
  "id": "ADD_COORGANIZER",
  "objective": "CONVERSION_DRIVING"
}

CoachingActionItemKindId

Description

The kind of action item that can be recommended

Values

Enum Value Description

ADD_COORGANIZER

ADD_IMAGES

CHANGE_IMAGES

Content management actions

CREATE_MILESTONE_UPDATE

DOWNLOAD_APP

ENABLE_AUTO_THANK_YOU

ENABLE_SMART_GOALS

Fundraiser management actions

INVITE_COORGANIZER

POST_UPDATE

Donor engagement actions

REACH_DIFFERENT_CONTACTS

REACH_HIGH_VALUE_DONORS

REWRITE_STORY

REWRITE_TITLE

SEE_WHO_ALREADY_KNOW

SETUP_PROFILE

SETUP_TRANSFERS

SHARE_CLOSE_CONTACTS

Sharing actions

SHARE_DIFFERENT_PLATFORM

SHARE_FACEBOOK

SHARE_INSTAGRAM_POST

SHARE_INSTAGRAM_STORY

SHARE_LINKEDIN

SHARE_ON_USER_SELECTED_PLATFORM

SHARE_TIKTOK

SHARE_TWITTER

THANK_DONORS

Example

"ADD_COORGANIZER"

CoachingActionItemMessageVariant

Fields

Field Name Description
id - ID! E.g. "SHARE_CLOSE_CONTACTS_MESSAGE_VARIANT_1". The frontends will be responsible for keeping track of which message belongs to which message variant, and also for rendering and translating that message. The backend simply decides which message variant should be used. For now, there is just an ID. Maybe in the future, when translations are working on the backend, this can be extended to include the actual text of the message, and the frontend can be even simpler

Example

{"id": 4}

CoachingActionItemMetadata

Description

Union type for Action Variables metadata

Example

ContactNudgeTextActionData

CoachingActionItemObjective

Description

Objectives for action items

Values

Enum Value Description

CONVERSION_DRIVING

FUNDRAISER_MANAGEMENT

TRAFFIC_DRIVING

Example

"CONVERSION_DRIVING"

CoachingTask

Description

Coaching task name and completed flag

Fields

Field Name Description
completed - Boolean!
taskName - CoachingTaskName!

Example

{"completed": false, "taskName": "BOOST_LEARN"}

CoachingTaskCategory

Values

Enum Value Description

BOOST

SHARE

TEAM

UPDATE

Example

"BOOST"

CoachingTaskCollection

Description

List of coaching tasks for a given category

Fields

Field Name Description
categoryName - CoachingTaskCategory!
tasks - [CoachingTask!]!

Example

{"categoryName": "BOOST", "tasks": [CoachingTask]}

CoachingTaskName

Values

Enum Value Description

BOOST_LEARN

BOOST_PARTIFUL

BOOST_PROF_PHOTO

BOOST_STORY_COST

BOOST_STORY_MEDIA

BOOST_STORY_PROOFREAD

SHARE_CLOSE

SHARE_NEIGHBOR

SHARE_OFFLINE

SHARE_ONLINE

TEAM_FIRST

TEAM_LEARN

TEAM_MORE

UPDATE_INTRO_CARD

UPDATE_LATEST

UPDATE_LEARN

UPDATE_SPEND_BENE

UPDATE_SPEND_CO

UPDATE_SPEND_TM

Example

"BOOST_LEARN"

CoachingTipName

Values

Enum Value Description

GOAL_ADJUST_10

GOAL_ADJUST_25

GOAL_ADJUST_75

GOAL_ADJUST_REACHED

PARTNER_EDIT_CLAIMED_FUNDRAISER

SHARE_ASK_DONORS

SHARE_ASK_FRIEND

SHARE_CAFE

SHARE_CLOSEST

SHARE_CLOSE_CONTACTS

SHARE_COPY_LINK

SHARE_DONOR_TAG

SHARE_EARLY

SHARE_EVERGREEN

SHARE_EXTEND_SHARE

SHARE_FOLLOW_UP

SHARE_GEN_AI

SHARE_INSTA_POST

SHARE_INSTA_STORIES

SHARE_LOCAL

SHARE_NEWS

SHARE_OTHER_HELP

SHARE_PUBLIC_THANK

SHARE_PUB_GROUPS

SHARE_RELATE

SHARE_SPECIFIC_AMT

SHARE_TIK_TOK

SHARE_VIDEOS

SHARE_WEEKDAYS

TEAM_REMIND_ACCEPT

TEAM_REMIND_ACCEPT_BIGGER

THANK_AUTO

THANK_UNTHANKED_10PLUS

THANK_UNTHANKED_2BELOW

THANK_UNTHANKED_3PLUS

UPDATE_MILESTONE_100

UPDATE_MILESTONE_25

UPDATE_MILESTONE_50

UPDATE_MILESTONE_75

UPDATE_SHARE_LATEST

UPDATE_UPDATE_EXISTING_DONORS

UPDATE_WEEKLY_REMINDER

ZERO_FOUNDING

ZERO_SMALL

Example

"GOAL_ADJUST_10"

Comment

Fields

Field Name Description
authorFirstName - String
authorLastName - String
authorProfilePhoto - Url
createdAt - DateTime
donation - Donation!
id - ID!
photos - [Photo!]!
status - CommentStatus!
text - String!

Example

{
  "authorFirstName": "abc123",
  "authorLastName": "abc123",
  "authorProfilePhoto": Url,
  "createdAt": "2007-12-03T10:15:30Z",
  "donation": Donation,
  "id": 4,
  "photos": [Photo],
  "status": "ACTIVE",
  "text": "xyz789"
}

CommentConnection

Fields

Field Name Description
edges - [CommentEdge]
pageInfo - PageInfo!

Example

{
  "edges": [CommentEdge],
  "pageInfo": PageInfo
}

CommentEdge

Fields

Field Name Description
cursor - String
node - Comment

Example

{
  "cursor": "xyz789",
  "node": Comment
}

CommentOrder

Values

Enum Value Description

CREATED_AT

Example

"CREATED_AT"

CommentStatus

Values

Enum Value Description

ACTIVE

DELETED

Example

"ACTIVE"

CommunityCharitiesConnection

Fields

Field Name Description
edges - [CommunityCharityEdge]
pageInfo - PageInfo!

Example

{
  "edges": [CommunityCharityEdge],
  "pageInfo": PageInfo
}

CommunityCharitiesOrder

Values

Enum Value Description

CREATED_AT

Example

"CREATED_AT"

CommunityCharity

Description

A charity that is associated with a community/cause, combining charity information with community-specific metadata

Fields

Field Name Description
charity - Charity The full charity information retrieved by EIN
communityId - ID The cause/community this charity is associated with
createdAt - DateTime When this charity was associated with the community
description - String Optional community-specific description for this charity
ein - String The EIN of the charity
gfmProUrl - String Optional GoFundMe Pro URL for this charity
id - ID! Unique identifier for this community charity association
updatedAt - DateTime When this charity association was last updated

Example

{
  "charity": Charity,
  "communityId": "4",
  "createdAt": "2007-12-03T10:15:30Z",
  "description": "xyz789",
  "ein": "xyz789",
  "gfmProUrl": "abc123",
  "id": 4,
  "updatedAt": "2007-12-03T10:15:30Z"
}

CommunityCharityEdge

Fields

Field Name Description
cursor - String
node - CommunityCharity

Example

{
  "cursor": "abc123",
  "node": CommunityCharity
}

CommunityConfiguration

Description

Configuration for a cause/community page

Fields

Field Name Description
communityAvatar - CommunityPhoto Avatar image for the community
communityName - String Name of the community
sections - CommunityConfigurationSections Page sections with relevant subsections for community

Example

{
  "communityAvatar": CommunityPhoto,
  "communityName": "abc123",
  "sections": CommunityConfigurationSections
}

CommunityConfigurationHeroSection

Description

Hero section for community configuration

Fields

Field Name Description
avatars - [CommunityPhoto!] List of avatars for the hero section
images - [CommunityPhoto!] List of images for the hero section

Example

{
  "avatars": [CommunityPhoto],
  "images": [CommunityPhoto]
}

CommunityConfigurationImpactSection

Description

Impact section for community configuration

Fields

Field Name Description
about - CommunityConfigurationImpactSectionAbout About section
endorsers - CommunityConfigurationImpactSectionEndorsers Endorsers section
images - [CommunityPhoto!] List of images for the impact section

Example

{
  "about": CommunityConfigurationImpactSectionAbout,
  "endorsers": CommunityConfigurationImpactSectionEndorsers,
  "images": [CommunityPhoto]
}

CommunityConfigurationImpactSectionAbout

Description

About section for community configuration

Fields

Field Name Description
description - String Description for the about section

Example

{"description": "abc123"}

CommunityConfigurationImpactSectionEndorsers

Description

Endorsers section for community configuration

Fields

Field Name Description
avatars - [CommunityPhoto!] List of avatars for the endorsers section

Example

{"avatars": [CommunityPhoto]}

CommunityConfigurationSections

Description

Page sections with relevant subsections for community

Fields

Field Name Description
hero - CommunityConfigurationHeroSection Hero section
impact - CommunityConfigurationImpactSection Impact section

Example

{
  "hero": CommunityConfigurationHeroSection,
  "impact": CommunityConfigurationImpactSection
}

CommunityPhoto

Description

Photo for community configuration

Fields

Field Name Description
altText - String Alt text for the photo
url - String! URL for the photo

Example

{
  "altText": "abc123",
  "url": "xyz789"
}

CommunityType

Description

Type of community this cause represents

Values

Enum Value Description

CAUSE

Cause-based community

CAUSE_BASED

Cause-based community Use CAUSE instead

CHALLENGE

Challenge-based community

CRISIS

Crisis-based community

CRISIS_BASED

Crisis-based community Use CRISIS instead

CUSTOM

Custom community

GIVING_CIRCLE

Giving circle community

HYBRID

Hybrid community

LOCATION

Location-based community

LOCATION_BASED

Location-based community Use LOCATION instead

MOMENT

Moment-based community

MOMENT_BASED

Moment-based community Use MOMENT instead

NPO_NETWORK

NPO network community

Example

"CAUSE"

ConnectionAction

Description

Individual action that contributed to the person recommendation with type, frequency, and weighted impact

Fields

Field Name Description
count - Int! Count of the recommended person's connection action
degree - Int! nth degree from target person connection query is providing results for
score - Float! Calculated weighted score base on action impact and frequency
type - ConnectionActionType! Type of action that contributed to this recommendation

Example

{
  "count": 987,
  "degree": 123,
  "score": 987.65,
  "type": "DONATED_TO_MY_FUNDRAISER"
}

ConnectionActionType

Description

Types of actions that can lead to recommendations

Values

Enum Value Description

DONATED_TO_MY_FUNDRAISER

Donated to fundraiser(s) organized by the person

DONATED_TO_MY_FUNDRAISER_USING_MY_SHARED_ATTRIBUTION

Donated to fundraiser(s) organized by the person using their shared attribution

DONATED_TO_THEIR_ORGANIZED_FUNDRAISER

Organized fundraiser(s) that the person donated to

DONATED_USING_MY_SHARED_ATTRIBUTION

Donated to a fundraiser with person's shared attribution

DONATED_USING_ORGANIZER_SHARED_ATTRIBUTION

Donated to a fundraiser using organizer's shared attributions

DONATED_USING_THEIR_SHARED_ATTRIBUTION

Donated to a fundraiser using their supporter shared attributions

FALLBACK

Default when not enough person recommendation is available

Example

"DONATED_TO_MY_FUNDRAISER"

Contact

Fields

Field Name Description
addresses - [String]
emailValues - [ContactData!]
emails - [String] No longer supported
firstName - String
id - ID!
lastName - String
locales - [String]
locations - [String]
nicknames - [String]
phoneValues - [ContactData!]
phones - [String] No longer supported
photoUrls - [String]
provider - ContactProvider!

Example

{
  "addresses": ["abc123"],
  "emailValues": [ContactData],
  "emails": ["abc123"],
  "firstName": "xyz789",
  "id": 4,
  "lastName": "abc123",
  "locales": ["xyz789"],
  "locations": ["xyz789"],
  "nicknames": ["xyz789"],
  "phoneValues": [ContactData],
  "phones": ["abc123"],
  "photoUrls": ["abc123"],
  "provider": "Apple"
}

ContactActivityLabel

Values

Enum Value Description

Contacted

Donated

Example

"Contacted"

ContactBadge

Values

Enum Value Description

Contacted

Coworker

DonatedAndThanked

DonatedToFund

GfmDonor

GfmMvp

GmailContact

HighValueContact

LinkedInContact

NoReturnTraffic

PhoneContact

SharedFund

Uncontacted

ViewedFund

Example

"Contacted"

ContactData

Fields

Field Name Description
id - ID!
value - String!

Example

{
  "id": "4",
  "value": "xyz789"
}

ContactLabelType

Values

Enum Value Description

Coworker

DonatedDaysAgo

SharedDaysAgo

Uncontacted

ViewedDaysAgo

Example

"Coworker"

ContactNudgeTextActionData

Description

Action metadata for following up on a Nudge Text Suggestion

Fields

Field Name Description
channel - ContactShareChannel Channel used by the Suggestion for sharing to contacts
preselected - [PreselectedContactData] List of Suggestion preselected contacts

Example

{
  "channel": "EMAIL",
  "preselected": [PreselectedContactData]
}

ContactProvider

Values

Enum Value Description

Apple

Facebook

Google

LinkedIn

Mobile

Example

"Apple"

ContactRecipient

Fields

Field Name Description
activityLabel - ContactActivityLabel
Arguments
fundraiserId - Int
channel - ContactShareChannel!
firstName - String
id - ID!
lastName - String
photoUrl - String
provider - ContactProvider!
value - String!

Example

{
  "activityLabel": "Contacted",
  "channel": "EMAIL",
  "firstName": "abc123",
  "id": 4,
  "lastName": "abc123",
  "photoUrl": "xyz789",
  "provider": "Apple",
  "value": "xyz789"
}

ContactRecipientConnection

Fields

Field Name Description
edges - [ContactRecipientsEdge]
pageInfo - PageInfo!

Example

{
  "edges": [ContactRecipientsEdge],
  "pageInfo": PageInfo
}

ContactRecipientFilter

Fields

Input Field Description
badges - [ContactBadge!]
channel - ContactShareChannel
provider - ContactProvider
query - String

Example

{
  "badges": ["Contacted"],
  "channel": "EMAIL",
  "provider": "Apple",
  "query": "abc123"
}

ContactRecipientsEdge

Fields

Field Name Description
cursor - String
node - ContactRecipient

Example

{
  "cursor": "xyz789",
  "node": ContactRecipient
}

ContactShareChannel

Description

Organizers can share their fundraisers with contacts through these communication channels

Values

Enum Value Description

EMAIL

LINKEDIN

SMS

Example

"EMAIL"

ContactSupporter

Fields

Field Name Description
badges - [ContactBadge]
contact - Contact!
donationAmount - Float
fundraiserId - Int!
id - ID!
labels - [ContactSupporterLabel]

Example

{
  "badges": ["Contacted"],
  "contact": Contact,
  "donationAmount": 987.65,
  "fundraiserId": 123,
  "id": 4,
  "labels": [ContactSupporterLabel]
}

ContactSupporterConnection

Fields

Field Name Description
edges - [ContactSupporterEdge]
pageInfo - PageInfo!

Example

{
  "edges": [ContactSupporterEdge],
  "pageInfo": PageInfo
}

ContactSupporterCountResponse

Description

Contact Supporter counts for a fundraiser

Fields

Field Name Description
donors - Int! Number of supporters who have donated
opportunities - Int! Total number of supporter opportunities
sharers - Int! Number of supporters who have shared
viewers - Int! Number of supporters who have viewed

Example

{"donors": 987, "opportunities": 987, "sharers": 123, "viewers": 123}

ContactSupporterEdge

Fields

Field Name Description
cursor - String
node - ContactSupporter

Example

{
  "cursor": "xyz789",
  "node": ContactSupporter
}

ContactSupporterLabel

Fields

Field Name Description
type - ContactLabelType!
value - String

Example

{"type": "Coworker", "value": "abc123"}

ContactSupportersFilter

Fields

Input Field Description
badges - [ContactBadge!]
channel - ContactShareChannel
provider - ContactProvider
query - String

Example

{
  "badges": ["Contacted"],
  "channel": "EMAIL",
  "provider": "Apple",
  "query": "xyz789"
}

ContactsImportStatus

Values

Enum Value Description

COMPLETED

FAILED

IN_PROGRESS

NOT_STARTED

Example

"COMPLETED"

ContactsOrder

Values

Enum Value Description

DONATION_DATE

NAME

OPPORTUNITY

SHARED_DATE

VIEWED_DATE

Example

"DONATION_DATE"

Coordinates

Fields

Field Name Description
latitude - Decimal
longitude - Decimal

Example

{
  "latitude": Decimal,
  "longitude": Decimal
}

CountryCode

Description

The CountryCode scalar type as defined by ISO 3166-1 alpha-2

Example

"US"

CreditCardContent

Fields

Field Name Description
last4 - String do not use it. It is not being populated
paymentId - ID The payment Id associated

Example

{"last4": "abc123", "paymentId": 4}

CurrencyCode

Description

A representation of the currencies in which GoFundMe supports fundraisers raising money

Values

Enum Value Description

AUD

CAD

CHF

DKK

EUR

GBP

MXN

NOK

SEK

USD

Example

"AUD"

CustomPromptResult

Description

Response containing the AI generation result and task information

Fields

Field Name Description
response - String The AI-generated response data Will be null while task is pending or if there was an error
task - GenAiAsyncTask Task information

Example

{
  "response": "abc123",
  "task": GenAiAsyncTask
}

Date

Description

An RFC-3339 compliant Full Date Scalar

Example

"2007-12-03"

DateTime

Description

A slightly refined version of RFC-3339 compliant DateTime Scalar

Example

"2007-12-03T10:15:30Z"

Decimal

Example

Decimal

DesignatedRecipient

Description

Info about partner designated recipient

Fields

Field Name Description
id - ID Recipient identifier
logoURL - Url Public url to the recipient's logo image
name - String Recipient name

Example

{
  "id": 4,
  "logoURL": Url,
  "name": "xyz789"
}

DesignatedRecipientInput

Description

The partner designated recipient

Fields

Input Field Description
recipientId - ID! Identifier for the designated recipient

Example

{"recipientId": 4}

Donation

Description

A donation to a given fundraiser made by a donor

Fields

Field Name Description
amount - Money! The amount of money donated to a fundraiser
charitySource - CharityDonationSource Provides information about the origin of the donation with respect to the charity
checkoutId - ID A reference to the donation within GoFundMe's payments system
comment - Comment comment associated with a donation
createdAt - DateTime! The timestamp of the donor donating to the fundraiser
deviceFingerprint - String Fingerprint of the device used to make the donation
donorEmail - String The email address of the donor
donorProfile - Profile The GFM profile information for the donor. When isAnonymous is true, profile must be null
encryptedDonationId - String Encoded encrypted donation id
fundraiser - Fundraiser The fundraiser to which this donation was made
giftAidConsent - Boolean Whether the donor has consented to allocate a portion of their donation towards Gift Aid
hasEmail - Boolean Indicates if the donation has a related donor email or not
hiddenDonationAmount - Boolean Whether the donation amount is hidden from the fundraiser page
id - ID!
ipAddress - String IP address of the donor
isAnonymous - Boolean! An indicator whether the donation was made anonymously, any anonymous donation should have an empty name field and an empty profileUrl field
isOffline - Boolean! An indicator whether the donation was processed offline, i.e. not through GoFundMe's Payments Rails
isRecurring - Boolean Indicate if the donation is a recurring donation
isVerified - Boolean! An indicator that the donation was completed and counts towards the fundraisers balance
name - String! The name of the donor donating to the fundraiser. When isAnonymous is true, name must be the string 'Anonymous'
netAmount - Money The net amount of money donated to a fundraiser
npoMarketingConsent - Boolean Indicates whether the donor has consented to sharing their personal data with nonprofits
paymentStatus - String The status of the payment tied to the donation
photos - [Photo] photos associated with a donation
ppgfTransactionId - ID The PPGF (PayPal Giving Fund) transaction ID. Only available to partners for donations to charity fundraisers attributed to the partner
profileUrl - Url The Facebook profile URL for the donor. When isAnonymous is true, profileUrl must be empty
refundNote - String Note associated withe the donation refund
refundedAt - DateTime The datetime the donation was refunded (null if it has not been refunded)
scheduledPaymentUuid - String scheduled payment uuid that is used to access the donation scheduled configuration
thankYous - [DonationThankYou] Thank you messages associated with the donation
tip - Tip An optional tip for GoFundMe
transactionId - ID Transaction id from payment-processor

Example

{
  "amount": Money,
  "charitySource": CharityDonationSource,
  "checkoutId": "4",
  "comment": Comment,
  "createdAt": "2007-12-03T10:15:30Z",
  "deviceFingerprint": "abc123",
  "donorEmail": "abc123",
  "donorProfile": Profile,
  "encryptedDonationId": "xyz789",
  "fundraiser": Fundraiser,
  "giftAidConsent": true,
  "hasEmail": false,
  "hiddenDonationAmount": true,
  "id": "4",
  "ipAddress": "abc123",
  "isAnonymous": true,
  "isOffline": true,
  "isRecurring": true,
  "isVerified": false,
  "name": "abc123",
  "netAmount": Money,
  "npoMarketingConsent": false,
  "paymentStatus": "abc123",
  "photos": [Photo],
  "ppgfTransactionId": "4",
  "profileUrl": Url,
  "refundNote": "xyz789",
  "refundedAt": "2007-12-03T10:15:30Z",
  "scheduledPaymentUuid": "xyz789",
  "thankYous": [DonationThankYou],
  "tip": Tip,
  "transactionId": "4"
}

DonationConnection

Fields

Field Name Description
edges - [DonationEdge]
pageInfo - PageInfo!

Example

{
  "edges": [DonationEdge],
  "pageInfo": PageInfo
}

DonationEdge

Fields

Field Name Description
cursor - String
node - Donation

Example

{
  "cursor": "abc123",
  "node": Donation
}

DonationFilterInput

Description

Fields for filtering a list of Donation

Fields

Input Field Description
includeGivingFundContributions - Boolean Whether to include giving fund contributions
includeRefunds - Boolean Whether to include refunded donations
isReplied - Boolean Is a Donation replied. A replied Donation has a thank you note related to it

Example

{
  "includeGivingFundContributions": true,
  "includeRefunds": false,
  "isReplied": false
}

DonationOrder

Values

Enum Value Description

AMOUNT

CREATED_AT

Example

"AMOUNT"

DonationThankYou

Description

A thank you message sent for a donation

Fields

Field Name Description
author - ThankYouAuthor The author of the thank you message
createdAt - DateTime The timestamp when the thank you message was created
donationId - ID The ID of the donation this thank you message is associated with
message - String The content of the thank you message
type - ThankYouCategory The type of thank you message

Example

{
  "author": ThankYouAuthor,
  "createdAt": "2007-12-03T10:15:30Z",
  "donationId": 4,
  "message": "abc123",
  "type": "AUTOMATIC"
}

EducationCard

Description

Enum representing different types of education cards. Cards are displayed in a specific order and may be automatically dismissed based on user actions or card-specific conditions

Values

Enum Value Description

CHARITABLE_GOAL

Information about setting and managing charitable giving goals. Auto-dismissed when user has this education card type

EXPLORE_NPOS

Information about exploring non-profit organizations. Never auto-dismissed - always available

INVEST

Information about investment options and strategies. Auto-dismissed when user has this education card type

ONBOARDING

Information about giving funds and their benefits. Never auto-dismissed - always available

RECURRING_CONTRIBUTION

Information about setting up recurring contributions. Auto-dismissed when user has this education card type

Example

"CHARITABLE_GOAL"

EmailInfo

Fields

Field Name Description
consent - Consent! Information about the user's consent to be contacted via email please use PersonConsent
email - String! Email address
verified - Boolean! Is the email verified

Example

{
  "consent": Consent,
  "email": "xyz789",
  "verified": true
}

EntityReaction

Fields

Field Name Description
actor - Actor
createdAt - DateTime!
id - ID!
type - ReactionType!

Example

{
  "actor": Anonymous,
  "createdAt": "2007-12-03T10:15:30Z",
  "id": 4,
  "type": "HEART"
}

ExpectedBeneficiaryRelation

Description

The intended relationship of the organizer of the fundraiser to the beneficiary of the fundraiser. This field only indicates an intention at the time of fundraiser creation. It is not indicative of who the actual beneficiary is

Values

Enum Value Description

CHARITY

The person who created the fundraiser intends to fundraiser for charity. I.e. the charity will be directly receiving the funds

SOMEONE_ELSE

The person who created the fundraiser intends for someone else to receive the funds

YOURSELF

The person who created the fundraiser intends to be one receiving the funds

Example

"CHARITY"

Experiment

Description

A simple key-value pair that maps an experiment key to a variant

Fields

Input Field Description
key - String! The experiment key
variant - String! The variant to which the user is assigned

Example

{
  "key": "xyz789",
  "variant": "abc123"
}

Feed

Fields

Field Name Description
activities - ActivityConnection The activities within the feed
Arguments
after - String
before - String
first - Int
last - Int
latitude - Float

Override latitude of the viewer's location, only used when order is NEAR_ME

longitude - Float

Override longitude of the viewer's location, only used when order is NEAR_ME

order - ActivityOrder
id - ID! The unique ID of the feed
viewerIsAdmin - Boolean Determines if the viewer is the admin of the feed

Example

{
  "activities": ActivityConnection,
  "id": 4,
  "viewerIsAdmin": false
}

Float

Description

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754

Example

123.45

FollowCtaText

Description

Follow call to action text options

Values

Enum Value Description

FOLLOW

JOIN

Example

"FOLLOW"

Follower

Description

A follower is a person that follows a given entity

Fields

Field Name Description
followedAt - DateTime
id - ID!
name - String
profile - Profile
profileUrl - String

Example

{
  "followedAt": "2007-12-03T10:15:30Z",
  "id": 4,
  "name": "abc123",
  "profile": Profile,
  "profileUrl": "abc123"
}

FollowerConnection

Fields

Field Name Description
edges - [FollowerEdge]
hasHiddenItems - Boolean Indicates if some follower was not retrieved in the following/followers list due to being blocker/blocked from the viewer
pageInfo - PageInfo!

Example

{
  "edges": [FollowerEdge],
  "hasHiddenItems": false,
  "pageInfo": PageInfo
}

FollowerEdge

Fields

Field Name Description
cursor - String
node - Follower

Example

{
  "cursor": "xyz789",
  "node": Follower
}

FollowerOrder

Values

Enum Value Description

FOLLOWED_AT

Example

"FOLLOWED_AT"

FundAlertsResponse

Description

Response containing fund alerts

Fields

Field Name Description
viewModels - [AlertViewModel] List of alert view models

Example

{"viewModels": [AlertViewModel]}

FundShareStatistics

Description

Aggregated impact of a Fundraiser's shares

Fields

Field Name Description
donationAmountInspired - Int
sharers - [FundSharerData]
sharesInspired - Int
viewsInspired - Int

Example

{
  "donationAmountInspired": 123,
  "sharers": [FundSharerData],
  "sharesInspired": 987,
  "viewsInspired": 123
}

FundSharerData

Description

Optional: Fundraiser sharer information

Fields

Field Name Description
contactId - ID
firstName - String
isAnon - Boolean
lastName - String
profileImage - Url

Example

{
  "contactId": 4,
  "firstName": "xyz789",
  "isAnon": true,
  "lastName": "xyz789",
  "profileImage": Url
}

Fundraiser

Description

A Fundraiser is an Entity that allows Fundraiser Organizers to raise money for themselves or others from Donors

Fields

Field Name Description
aiShareTextEnabled - Boolean A setting that controls whether or not GenAI Suggested Share Text is enabled If enabled, the sharesheet will automatically generate share text for the user. If disabled, the sharesheet will use hardcoded fallback text
alerts - FundAlertsResponse Alerts for the fundraiser organizer
Arguments
forceReturn - Boolean

Bypass cache to retrieve fresh data (for testing purposes)

areCollectionsDisplayed - Boolean A setting that controls if a fundraiser page shows collections of related fundraisers. This settings affects the UI of the fundraiser page. If enabled, the fundraiser page will show collections of related fundraisers. If disabled, the fundraiser page will not show collections of related fundraisers
autoFbPostMode - Boolean!
autoThank - AutoThank Auto thank setting is used to determine whether a donor will receive an automatic thank you
campaign - Campaign The campaign associated with the fundraiser. A campaign represents a NPO initiated fundraising event, sometimes referred to as a "challenge" and groups together fundraisers that are part of the effort
category - FundraiserCategory The category of the fundraiser
categoryId - ID The categoryId of the fundraiser. Used for legacy purposes Use the 'category' field.
categoryPredictions - [CategoryPrediction] List of category predictions for the fundraiser driven by machine learning
charity - Charity Information about the charity beneficiary of the fundraiser if there is one
charityFundMomentType - CharityFundMomentType The type of moment associated with this fundraiser (e.g., BIRTHDAY, CLASSIC). This field is only applicable for charity fundraisers (when projectType is CHARITY). Will be null for non-charity fundraisers. @deprecated(reason: "Use 'charityFundraiserMomentType' field instead to allow more moments in the future.")
charityFundraiserMomentType - String Type of moment to check for. If null, uses default CLASSIC. Alternate to momentType enum which will be deprecated in the future
charityOrganized - Boolean
coOrganizerInvites - [CoOrganizerInvite] List of coOrganizer invites for a fundraiser
Arguments
onlyActive - Boolean
coOrganizers - CoOrganizerConnection List of Co-organizers associated with the fundraiser
Arguments
after - String
before - String
first - Int
last - Int
coachingActionItemsCompleted24hours - Int Number of coaching action items completed in the last 24 hours
commentCount - Int
comments - CommentConnection List of comments posted by donors for a fundraiser
Arguments
after - String
before - String
first - Int
last - Int
commentsEnabled - Boolean An indicator for whether donors are able to make comments on the fundraiser
commentsOffsetPagination - CommentConnection List of comments posted by donors for a fundraiser using offset pagination Should only be used for feed deprecation project - otherwise just use "comments"
Arguments
limit - Int
offset - Int
currentAmount - Money The current amount of money raised for a fundraiser
currentNetAmount - Money The current net amount of money raised for a fundraiser
deactivated - Boolean An indicator whether the fundraiser is currently deactivated
deadline - DateTime Fundraiser organizer supplied deadline for raising funds for the fundraiser Use the 'serviceDate' field.
defaultSlug - String
defaultUrl - String Use the 'defaultSlug' field.
description - String! Fundraiser organizer supplied description of the fundraiser, in HTML
Arguments
excerpt - Boolean

Flag to specify whether to return an excerpt of the description; defaults to false

donationCount - Int!
donations - DonationConnection List of donations for a fundraiser using cursor based pagination
Arguments
after - String
before - String
first - Int
last - Int
order - DonationOrder
donationsEnabled - Boolean An indicator for whether donors are able to make donations to the fundraiser
donationsFromShares - DonationConnection List of donations for a fundraiser by SmartLink AttributionId using cursor based pagination
Arguments
after - String
attributionId - String
before - String
first - Int
last - Int
order - DonationOrder
donationsInLast24HoursCount - Int
donationsInLast48HoursCount - Int
donationsOffsetPagination - DonationConnection List of donations for a fundraiser using offset based pagination. Should only be used for feed deprecation project - otherwise just use "donations"
Arguments
limit - Int
offset - Int
order - DonationOrder
enableContact - Boolean An indicator for whether the Contact Organizer feature should be present
encourageRecurringDonations - Boolean A setting that controls whether or not the Fundraiser Organizer suggest that donors make recurring donations rather than one time
expectedBeneficiaryRelation - ExpectedBeneficiaryRelation Who the organizer of the fundraiser originally expected to receive the funds. E.g. "Yourself", "Someone else", or "Charity". This value does not represent who is actually receiving the funds, just an intent at the time the fundraiser was created
fundDescription - String Fundraiser organizer supplied description of the fundraiser Use the 'description' field.
Arguments
excerpt - Boolean

Flag to specify whether to return an excerpt of the description; defaults to false

fundId - ID! The fundraiser's unique, stable id
fundName - String! Fundraiser organizer supplied name for the fundraiser Use the 'title' field.
fundraiserHeartCount - Int Use 'heartCount' field.
fundraiserImageUrl - Url The Url of the image to be used for the fundraiser Use 'mediaUrl' field.
fundraiserPhoto - FundraiserPhoto Object with image url and various scaling options Use 'photo' field.
galleryImages - GalleryImagesConnection List of additional uncropped fundraiser gallery images submitted by the organizer
Arguments
after - String
before - String
first - Int
last - Int
goalAmount - Money Displayed goal amount for the fundraiser
goalDeadline - DateTime Fundraiser organizer supplied deadline for raising funds for the fundraiser Use the 'serviceDate' field.
goalLog - [Goal] A log of goal changes over time
hasDonations - Boolean An indicator for whether the fundraiser has received any donations
hasGfmOrgDonation - Boolean An indicator for whether the fundraiser has received any donations from GoFundMe.org
heartCount - Int
id - ID! A unique identifier for the fundraiser
inDegradedMode - Boolean
inReview - Boolean
instagramDeepLink - String The Instagram deep link url. Only available for some Person To Charity (P2C) fundraisers
isGfmDotOrgFund - Boolean An indicator for whether the fund is a GFM.org fund
isLaunched - Boolean An indicator whether the fundraiser is currently launched Use the 'isPublished' field.
isLinkedWithMeta - Boolean Indicates if the fund was linked to Meta
isPersonalCharity - Boolean An indicator
isPrivate - Boolean

The fundraiser's privacy setting, which is set by the organizer. It defaults to false. This will control whether the fundraiser can appear on featured pages and collections.

There is a related field called visibleInSearch. If isPrivate is true, then visibleInSearch will be false. The visibleInSearch field may be false for other reasons, but it's always false (not visible) when the organizer makes the fundraiser "private"

isPublished - Boolean An indicator whether the fundraiser is currently published. A published fundraiser is publicly visible, unless it has been flagged. A "draft" fundraiser is one that is not published
isUkraineFlow - Boolean An indicator for whether the fund has the ukraine flow active
lastDonationAt - DateTime Time of the last donation to the fundraiser
latestReachOut - DateTime Latest time a reach out was sent to the fundraiser
launchDate - DateTime The timestamp of the fundraiser organizer launching the fundraiser Use 'publishedAt' field.
location - Location The fundraiser organizer specified location of the fundraiser
mediaId - String Reference to the content used for the fundraiser page
mediaType - MediaType The kind of content used for the fundraiser page
mediaUrl - Url The Url of the image to be used for the fundraiser
myRelationships - [FundraiserRelationship!] The current user's relationship to the fundraiser
npoMarketingConsent - Boolean Indicates whether the campaign organizer has consented to sharing their personal data with nonprofits when creating a fundraiser
organizer - User User information for the Fundraiser Organizer who created the fundraiser
partner - Partner Information about the partner that facilitated the creation of the fundraiser
partnerCobrandingEnabled - Boolean Indicates whether or not the fundraiser should be cobranded with the partner
partnerExternalOrganizer - PartnerExternalOrganizer A partner-created fund can be associated with an external user that might claim the fund later on; or has already done so
photo - FundraiserPhoto Object with image url and various scaling options
photoCounts - PhotoCounts
photoCropPoints - PhotoCropPoints Photo crop points for images generated by the BYOP service
posterSharingEnabled - Boolean A setting that controls whether or not Poster Sharing is enabled If enabled, the sharesheet will allow poster sharing for the user. If disabled, the sharesheet will not allow poster sharing for the user
projectType - ProjectType Is the fundraiser personal, or for charity? Money goes directly to the charity for charity fundraisers
publishedAt - DateTime The timestamp of when the fundraiser was first published
redirectUrl - String Most recent url for the fundraiser. Returns null if the request url is current
serviceDate - DateTime Date that funds need to be raised by for a funeral or memorial service
shareHistory - ShareHistoryConnection Get list of Share History items of a fundraiser (filtered base on the logged in user)
Arguments
after - String
first - Int
shareHistoryActivityCount - Int Get total counts of Share History items of a fundraiser
Arguments
shareStats - FundShareStatistics Get share result impact aggregation for a Fundraiser
Arguments
filter - ShareStatsFilter
slug - String The unique slug of the fundraiser
smartGoalsEnabled - Boolean An indicator for whether smart goals are enabled on the fundraiser. If null, the organizer has not opted into smart goals, which will mean smart goals are disabled Use the 'smartGoalsOptIn' field
smartGoalsOptIn - SmartGoalsOptInState An indicator for whether smart goals are enabled/disabled on the fundraiser. If in the not eligible state, the organizer has not opted into smart goals, which will mean smart goals are disabled
socialShareCount - Int
socialShareLastUpdate - DateTime The contents of the fundraiser organizers last social share
state - FundraiserState
suggestedGoalAmount - SuggestedGoalAmount Get suggested goal amount based on fundraiser and browser/device data. Returns null if there is no suggestion
Arguments
goalType - SuggestedGoalType!
modelTargets - [Experiment!]
organizerDefinedGoalAmount - Int
organizerDistinctId - ID
organizerReferrer - String
organizerScreenHeight - Int
organizerScreenWidth - Int
requestSource - SuggestedGoalRequestSource!
tags - [String!]
team - Team Information about the team the fundraiser is being organized by
teamMembers - [TeamMember!]
templateId - Int
thirdPartyId - String Optional identifier provided by a partner for partner-referred fundraisers
title - String! Fundraiser organizer supplied title for the fundraiser
topCause - Cause The primary Cause associated with this fundraiser, based on the highest ranking category prediction
topShareActivity - ShareHistoryItem Fetch the Share Activity item with the highest amount of Inspired Donations
totalDonations - Int Total number of donations for a fundraiser
Arguments
totalViews - Int Total number of views for a fundraiser
turnOffDonations - Boolean An indicator whether the fund is accepting donations
uniqueDonorCount - Int
updateCount - Int
url - String The Url of the fundraiser. Deprecated in favor of 'slug' This value is not a URL, it is a slug. Use the 'slug' field.
userDefinedGoalAmount - Money Fundraiser organizer supplied goal amount for the fundraiser
videoSharingEnabled - Boolean A setting that controls whether or not Video Sharing is enabled If enabled, an AI generated video will be created and shareable in the sharesheet. If disabled, no video will be generated
visibleInSearch - Boolean An indicator whether or not the fundraiser is visible in search
whyToDonate - String Why to donate text generated by the BYOP service
withdrawalsLocked - Boolean Indicates whether withdrawals are currently locked for this fundraiser. Returns false when no locks exist or when all locks are cleared. Returns true when any active, non-cleared lock exists. Returns null when unauthenticated or not a member

Example

{
  "aiShareTextEnabled": true,
  "alerts": FundAlertsResponse,
  "areCollectionsDisplayed": false,
  "autoFbPostMode": true,
  "autoThank": AutoThank,
  "campaign": Campaign,
  "category": "ANIMALS",
  "categoryId": 4,
  "categoryPredictions": [CategoryPrediction],
  "charity": Charity,
  "charityFundMomentType": "BIRTHDAY",
  "charityFundraiserMomentType": "abc123",
  "charityOrganized": true,
  "coOrganizerInvites": [CoOrganizerInvite],
  "coOrganizers": CoOrganizerConnection,
  "coachingActionItemsCompleted24hours": 987,
  "commentCount": 987,
  "comments": CommentConnection,
  "commentsEnabled": true,
  "commentsOffsetPagination": CommentConnection,
  "currentAmount": Money,
  "currentNetAmount": Money,
  "deactivated": false,
  "deadline": "2007-12-03T10:15:30Z",
  "defaultSlug": "xyz789",
  "defaultUrl": "abc123",
  "description": "xyz789",
  "donationCount": 123,
  "donations": DonationConnection,
  "donationsEnabled": false,
  "donationsFromShares": DonationConnection,
  "donationsInLast24HoursCount": 123,
  "donationsInLast48HoursCount": 123,
  "donationsOffsetPagination": DonationConnection,
  "enableContact": true,
  "encourageRecurringDonations": false,
  "expectedBeneficiaryRelation": "CHARITY",
  "fundDescription": "abc123",
  "fundId": 4,
  "fundName": "abc123",
  "fundraiserHeartCount": 123,
  "fundraiserImageUrl": Url,
  "fundraiserPhoto": FundraiserPhoto,
  "galleryImages": GalleryImagesConnection,
  "goalAmount": Money,
  "goalDeadline": "2007-12-03T10:15:30Z",
  "goalLog": [Goal],
  "hasDonations": true,
  "hasGfmOrgDonation": true,
  "heartCount": 987,
  "id": 4,
  "inDegradedMode": false,
  "inReview": true,
  "instagramDeepLink": "xyz789",
  "isGfmDotOrgFund": true,
  "isLaunched": true,
  "isLinkedWithMeta": true,
  "isPersonalCharity": true,
  "isPrivate": false,
  "isPublished": true,
  "isUkraineFlow": true,
  "lastDonationAt": "2007-12-03T10:15:30Z",
  "latestReachOut": "2007-12-03T10:15:30Z",
  "launchDate": "2007-12-03T10:15:30Z",
  "location": Location,
  "mediaId": "xyz789",
  "mediaType": "FACEBOOK_AWS",
  "mediaUrl": Url,
  "myRelationships": ["ACCEPTED_BENEFICIARY"],
  "npoMarketingConsent": true,
  "organizer": User,
  "partner": Partner,
  "partnerCobrandingEnabled": true,
  "partnerExternalOrganizer": PartnerExternalOrganizer,
  "photo": FundraiserPhoto,
  "photoCounts": PhotoCounts,
  "photoCropPoints": PhotoCropPoints,
  "posterSharingEnabled": true,
  "projectType": "AON",
  "publishedAt": "2007-12-03T10:15:30Z",
  "redirectUrl": "abc123",
  "serviceDate": "2007-12-03T10:15:30Z",
  "shareHistory": ShareHistoryConnection,
  "shareHistoryActivityCount": 987,
  "shareStats": FundShareStatistics,
  "slug": "xyz789",
  "smartGoalsEnabled": true,
  "smartGoalsOptIn": "DISABLED",
  "socialShareCount": 987,
  "socialShareLastUpdate": "2007-12-03T10:15:30Z",
  "state": "ACTIVE",
  "suggestedGoalAmount": SuggestedGoalAmount,
  "tags": ["abc123"],
  "team": Team,
  "teamMembers": [TeamMember],
  "templateId": 987,
  "thirdPartyId": "abc123",
  "title": "abc123",
  "topCause": Cause,
  "topShareActivity": ShareHistoryItem,
  "totalDonations": 123,
  "totalViews": 987,
  "turnOffDonations": false,
  "uniqueDonorCount": 123,
  "updateCount": 987,
  "url": "abc123",
  "userDefinedGoalAmount": Money,
  "videoSharingEnabled": false,
  "visibleInSearch": false,
  "whyToDonate": "abc123",
  "withdrawalsLocked": true
}

FundraiserCategory

Description

The fundraiser category, such as "Funerals & Memorials" or "Medical". When someone is creating a fundraiser, one of the form fields they fill out is called "Category", and this type represents an option

Values

Enum Value Description

ANIMALS

BUSINESS

CHARITY

COMMUNITY

COMPETITIONS

CREATIVE

EDUCATION

EMERGENCIES

ENVIRONMENT

EVENTS

FAITH

FAMILY

MEDICAL

MEMORIALS

MONTHLY_BILLS

NEWLYWEDS

OTHER

SPORTS

TRAVEL

VOLUNTEER

WISHES

Example

"ANIMALS"

FundraiserConnection

Fields

Field Name Description
edges - [FundraiserEdge]
pageInfo - PageInfo!

Example

{
  "edges": [FundraiserEdge],
  "pageInfo": PageInfo
}

FundraiserEdge

Fields

Field Name Description
cursor - String
node - Fundraiser

Example

{
  "cursor": "abc123",
  "node": Fundraiser
}

FundraiserFilter

Description

Fields for filtering a list of Fundraisers

Fields

Input Field Description
isPublished - Boolean Is a Fundraiser publicly viewable. A viewable fundraiser will have a publicly accessible URL
myRelationships - [FundraiserRelationship!] The user's relationship to the fundraiser

Example

{"isPublished": false, "myRelationships": ["ACCEPTED_BENEFICIARY"]}

FundraiserInput

Description

Input for creating or updating a fundraiser

Fields

Input Field Description
acknowledgeContentWarnings - Boolean

A confirmation that the organizer of this fundraiser has acknowledged any warnings that may have been triggered by the content of their fundraiser.

This field is optional if:

  1. The fundraiser is not published, OR
  2. The input does not trigger any content warnings.

If the input does trigger content warnings AND the fundraiser is published, this value must be true or the request will be rejected.

To check for warnings before submitting input, use the contentWarnings Query

aiShareTextEnabled - Boolean A setting that controls whether or not GenAI Suggested Share Text is enabled If enabled, the sharesheet will automatically generate share text for the user. If disabled, the sharesheet will use hardcoded fallback text
category - FundraiserCategory The fundraiser's category
charity - CharitySelectInput The charity that will directly receive the money raised from this fundraiser. If a charity is selected, the organizer will not be able to withdraw funds to their own bank account
clientGeneratedDraftId - String A draft id generated client-sided during the initial create step
collectionId - ID The UUID of the collection to which the fundraiser should be added
country - CountryCode

The country the fundraiser is located in. The user creating this fundraiser will only be able to withdraw funds if their mailing address is located in this country.

Once a user has published their first fundraiser, all subsequent fundraisers must have the same country. To check this requirement, use the Viewer.assignedCountryForPayments field. If that value is set, the FundraiserInput.country field must match, or the mutation will be rejected

description - String The HTML description for the fundraiser. This must be a well-formed HTML fragment containing only the following HTML tags: "p", "div", "h1", "h2", "h3", "h4", "h5", "h6", "ul", "ol", "li", "blockquote", "b", "i", "font", "s", "u", "o", "sup", "sub", "ins", "del", "strong", "strike", "tt", "code", "big", "small", "br", "span", "em"
encourageRecurringDonations - Boolean A setting that controls whether or not the Fundraiser Organizer suggest that donors make recurring donations rather than one time
expectedBeneficiaryRelation - ExpectedBeneficiaryRelation

Who the organizer of the fundraiser intends will receive the funds. E.g. "Yourself" if they intend to receive funds themselves, "Someone else" if they intend for another individual to receive the funds, or "Charity" if they're fundraising on behalf of charity.

This value only represents an expectation at the time of creating or updating the fundraiser. It is not a source of truth for who is actually receiving the funds

goalAmount - Int The fundraiser's goal amount. This amount is denominated in the currency provided in the "currency" input value. This is a deprecated field, userDefinedGoalAmount should be used instead
isPrivate - Boolean The fundraiser's privacy setting. This will control whether the fundraiser can appear on featured pages and collections. This setting is used, alongside other factors, in determining if the fundraiser should appear in search
mediaUrl - Url The URL of the main image or video that appears on the fundraiser's public page
npoMarketingConsent - Boolean Indicates whether the campaign organizer has consented to sharing their personal data with nonprofits when creating a fundraiser
partnerAffiliation - PartnerAffiliation Optional information necessary to associate this fundraiser to a partner, if the organizer came to us from a partner. Basic affiliation will be inferred automatically if a fundraiser is created using an API Key
partnerExternalOrganizer - PartnerExternalOrganizerInput Associates a partner-created fundraiser with an external user. If provided, the user will be sent an invitation to organize the fundraiser upon publish
partnerFundraiserInput - PartnerFundraiserInput Input data concerning the partner to be associated with the fundraiser
postalCode - String The zip/postal code of the fundraiser
posterSharingEnabled - Boolean A setting that controls whether or not Poster Sharing is enabled If enabled, the sharesheet will allow poster sharing for the user. If disabled, the sharesheet will not allow poster sharing for the user
serviceDate - DateTime Date that funds need to be raised by for a funeral or memorial service. This value should only be set for fundraisers that are for funerals or memorials
slug - String The unique slug that will be used to construct the URL to your fundraiser (gofundme.com/f/{slug}). If not provided, a slug will be inferred from your title. If a custom slug is provided, but it is already taken, an error will be thrown. Slug can be edited freely while in draft. After publish, only one additional update to slug is permitted
smartGoalAmount - Int Internal use only. An automatically determined starting goal amount that will be updated over time, if the organizer has opted into smart goals. This amount is denominated in the currency provided in the "currency" input value. Partners setting this value will result in an error
smartGoalsEnabled - Boolean A setting that controls whether or not the goal amount should be automatically adjusted over time. If enabled, the current smart goal amount (goalAmount) will be shown on the fundraiser page. If disabled, the userDefinedGoalAmount will always be shown
title - String The fundraiser's title. This will appear as the headline and show up in shared links and social media posts
userDefinedGoalAmount - Int The organizer's manually entered goal amount. This represents their final goal, but may not be what be what displays on the fundraiser page if the organizer has opted into smart goals. This amount is denominated in the currency provided in the "currency" input value
videoSharingEnabled - Boolean A setting that controls whether or not Video Sharing is enabled If enabled, an AI generated video will be created and shareable in the sharesheet. If disabled, no video will be generated

Example

{
  "acknowledgeContentWarnings": false,
  "aiShareTextEnabled": false,
  "category": "ANIMALS",
  "charity": CharitySelectInput,
  "clientGeneratedDraftId": "xyz789",
  "collectionId": "4",
  "country": "US",
  "description": "abc123",
  "encourageRecurringDonations": true,
  "expectedBeneficiaryRelation": "CHARITY",
  "goalAmount": 123,
  "isPrivate": true,
  "mediaUrl": Url,
  "npoMarketingConsent": false,
  "partnerAffiliation": PartnerAffiliation,
  "partnerExternalOrganizer": PartnerExternalOrganizerInput,
  "partnerFundraiserInput": PartnerFundraiserInput,
  "postalCode": "abc123",
  "posterSharingEnabled": true,
  "serviceDate": "2007-12-03T10:15:30Z",
  "slug": "xyz789",
  "smartGoalAmount": 987,
  "smartGoalsEnabled": true,
  "title": "abc123",
  "userDefinedGoalAmount": 987,
  "videoSharingEnabled": false
}

FundraiserOrder

Values

Enum Value Description

AMOUNT

CREATED_AT

LAST_DONATION_AT

Example

"AMOUNT"

FundraiserPhoto

Fields

Field Name Description
scaled - FundraiserPhotoScaled
url - Url

Example

{
  "scaled": FundraiserPhotoScaled,
  "url": Url
}

FundraiserPhotoScaled

Fields

Field Name Description
fourByThree1200 - Url
oneByOne960 - Url 3x2-640
sixteenByNine270 - Url 3x2-1200 Mistyped. Use 'sixteenByNine720' instead.
sixteenByNine720 - Url
threeByTwo1200 - Url 4x3-1200
threeByTwo640 - Url 3x2-720
threeByTwo720 - Url 16x9-720

Example

{
  "fourByThree1200": Url,
  "oneByOne960": Url,
  "sixteenByNine270": Url,
  "sixteenByNine720": Url,
  "threeByTwo1200": Url,
  "threeByTwo640": Url,
  "threeByTwo720": Url
}

FundraiserPublishInput

Description

Input for creating or updating a fundraiser

Fields

Input Field Description
acknowledgeContentWarnings - Boolean Publish the fundraiser regardless of whether or not the description is flagged as containing potential PII / crisis content

Example

{"acknowledgeContentWarnings": true}

FundraiserRelationship

Description

Possible relationships that a user may have with a fundraiser

Values

Enum Value Description

ACCEPTED_BENEFICIARY

ORGANIZER

PENDING_BENEFICIARY

TEAM_MEMBER

Example

"ACCEPTED_BENEFICIARY"

FundraiserResponse

Description

Response payload after creating or updating a fundraiser

Fields

Field Name Description
fundraiser - Fundraiser The newly-created fundraiser
userErrors - [UserError!]! Fixable validation errors. These are meant to display to the end-user

Example

{
  "fundraiser": Fundraiser,
  "userErrors": [UserError]
}

FundraiserState

Values

Enum Value Description

ACTIVE

CAMPAIGNLITE

DELETED

HIDDEN

UNKNOWN

Example

"ACTIVE"

FundraiserUpdate

Description

An update posted to a fundraiser by a CO, bene, or team member

Fields

Field Name Description
createdAt - DateTime! The timestamp of when the update was created
id - ID!
photos - [Photo!] The photos that goes along with the update, if there are any
status - UpdateStatus The status of the update (i.e. if it is ACTIVE (visible), or DELETED (hidden))
text - String! The text content posted by the update's author
youtubeVideoId - String the video id of the youtube video to go along with the update, if there is one. e.g. the "SOME_VIDEO_ID" in https://www.youtube.com/watch?v=SOME_VIDEO_ID

Example

{
  "createdAt": "2007-12-03T10:15:30Z",
  "id": "4",
  "photos": [Photo],
  "status": "ACTIVE",
  "text": "xyz789",
  "youtubeVideoId": "xyz789"
}

GalleryImagesConnection

Fields

Field Name Description
edges - [GalleryImagesEdge]
pageInfo - PageInfo!

Example

{
  "edges": [GalleryImagesEdge],
  "pageInfo": PageInfo
}

GalleryImagesEdge

Fields

Field Name Description
cursor - String
node - Photo

Example

{
  "cursor": "abc123",
  "node": Photo
}

GalleryImagesOrder

Values

Enum Value Description

CREATED_AT

Example

"CREATED_AT"

GenAiAsyncTask

Description

Base type for async task information

Fields

Field Name Description
taskId - ID Unique identifier for the task
taskStatus - GenAiTaskStatus Current status of the task

Example

{"taskId": "4", "taskStatus": "DONE"}

GenAiTaskStatus

Description

Represents the status of an asynchronous task

Values

Enum Value Description

DONE

ERROR

PENDING

Example

"DONE"

GfmHero

Description

GoFundMe Hero actor

Fields

Field Name Description
firstName - String The first name of the GoFundMe Hero actor
id - ID! The id of the GoFundMe Hero actor
lastName - String The last name of the GoFundMe Hero actor

Example

{
  "firstName": "xyz789",
  "id": "4",
  "lastName": "abc123"
}

GivingFund

Fields

Field Name Description
availableBalance - Money The available balance. This is SUM(all posted transactions) - SUM(all pending transactions). Coming from MT directly. It should not be used on the end user facing fields
contributionGoal - GivingFundContributionGoal Contribution goal for the giving fund
currentBalance - Money The current balance of the giving fund account. This is currently linked to pendingBalance directly. Later it can be manipulated due to product requirements on the backend. It should be used on the end user facing fields
fundId - String! The shadow fund id related to the giving fund
fundraiser - Fundraiser The shadow fund related to the giving fund
id - ID! The giving fund ID
investment - GivingFundInvestment Investment details
investmentStatus - GivingFundInvestmentStatus Status of the giving fund investment
name - String! The giving fund name
pendingBalance - Money The pending balance. This is SUM(all pending + posted transactions). Coming from MT directly. It should not be used on the end user facing fields
pendingContributionBalance - Money The pending contribution balance. It is the sum of all pending contributions transactions only. It should be used on the end user facing fields
postedBalance - Money The posted balance. This is SUM(all pending). Coming from MT directly. It should not be used on the end user facing fields
transaction - GivingFundTransaction Gets a single transaction from the Giving Fund by it's ID
Arguments
id - ID!
transactionSummaries - GivingFundTransactionSummaries Gets a summary of transactions for the giving fund
transactions - GivingFundTransactionConnection List of transactions for the giving fund
Arguments
after - String
before - String
first - Int
last - Int

Example

{
  "availableBalance": Money,
  "contributionGoal": GivingFundContributionGoal,
  "currentBalance": Money,
  "fundId": "xyz789",
  "fundraiser": Fundraiser,
  "id": 4,
  "investment": GivingFundInvestment,
  "investmentStatus": "ACTIVE",
  "name": "xyz789",
  "pendingBalance": Money,
  "pendingContributionBalance": Money,
  "postedBalance": Money,
  "transaction": GivingFundTransaction,
  "transactionSummaries": GivingFundTransactionSummaries,
  "transactions": GivingFundTransactionConnection
}

GivingFundAcatsContributionAsset

Description

Represents an ACATS contribution asset

Fields

Field Name Description
fairMarketValue - Money The fair market value of the contributed asset at the time of contribution
price - Money The total price of the contributed asset
quantity - Decimal The quantity of assets with the same type contributed
symbol - String The ticker symbol of the contributed asset. "USD" for cash
unitPrice - Money The unit price of the contributed asset

Example

{
  "fairMarketValue": Money,
  "price": Money,
  "quantity": Decimal,
  "symbol": "xyz789",
  "unitPrice": Money
}

GivingFundAcatsContributionDetails

Description

Represents an ACATS contribution to the user's giving fund (assets flowing in)

Fields

Field Name Description
assets - [GivingFundAcatsContributionAsset] Assets contributed in this contribution

Example

{"assets": [GivingFundAcatsContributionAsset]}

GivingFundContributionDetails

Description

Represents a contribution to the user's giving fund (money flowing in)

Fields

Field Name Description
feeAmount - Money!
sourceContent - GivingFundContributionSourceContent
sourceType - GivingFundContributionSourceType

Example

{
  "feeAmount": Money,
  "sourceContent": CreditCardContent,
  "sourceType": "ACH"
}

GivingFundContributionGoal

Description

Represents a contribution goal for a giving fund

Fields

Field Name Description
amountDonatedPreviousYear - Decimal Amount donated in the previous year, for LAST_YEAR_GOAL type
givingFundId - ID! The ID of the giving fund this goal belongs to
goalAmount - Decimal! The target amount for the contribution goal
goalStrategy - GivingFundGoalStrategy The type of contribution goal
id - ID! Unique identifier for the contribution goal
incomeBasedGoalDetails - IncomeBasedGoalDetails Additional details for income-based goals

Example

{
  "amountDonatedPreviousYear": Decimal,
  "givingFundId": 4,
  "goalAmount": Decimal,
  "goalStrategy": "FIXED_AMOUNT",
  "id": "4",
  "incomeBasedGoalDetails": IncomeBasedGoalDetails
}

GivingFundContributionSourceContent

Description

Union for types to create details for each GivingFundContributionSourceType

Types

Union Types

CreditCardContent

Example

CreditCardContent

GivingFundContributionSourceType

Description

Enum for the source of the transaction

Values

Enum Value Description

ACH

APPLE_PAY

CREDIT_CARD

GOOGLE_PAY

UNKNOWN

Example

"ACH"

GivingFundDonationDetails

Description

Represents a donation made from the user's giving fund to a charity (money flowing out)

Fields

Field Name Description
charityId - ID!
donationAmount - Money! The amount of the donation
npoData - GivingFundDonationNpoContentDetails
npoName - String! Extra field only for donations No longer supported
npoType - GivingFundDonationNpoContentType
p2cFundId - ID
tipAmount - Money! The amount of the tip

Example

{
  "charityId": 4,
  "donationAmount": Money,
  "npoData": Charity,
  "npoName": "abc123",
  "npoType": "FUNDRAISER",
  "p2cFundId": "4",
  "tipAmount": Money
}

GivingFundDonationNpoContentDetails

Types

Union Types

Charity

Fundraiser

Example

Charity

GivingFundDonationNpoContentType

Values

Enum Value Description

FUNDRAISER

NPO

Example

"FUNDRAISER"

GivingFundExternalDafContributionDetails

Description

Represents a DAF to DAF contribution to the user's giving fund (money flowing in)

Fields

Field Name Description
extDafName - String!
externalGrantId - String!

Example

{
  "extDafName": "xyz789",
  "externalGrantId": "xyz789"
}

GivingFundFavorite

Description

A favorite item for a user in a giving fund context

Fields

Field Name Description
contentData - GivingFundFavoriteContent The data for the favorited content (e.g., Charity, Campaign, etc.)
contentId - String The ID of the content that was marked favorite
contentType - GivingFundFavoriteContentType The type of content that was marked favorite
givingFundId - ID The giving fund ID associated with the favorite
id - ID! The favorite ID

Example

{
  "contentData": Charity,
  "contentId": "abc123",
  "contentType": "NPO",
  "givingFundId": "4",
  "id": 4
}

GivingFundFavoriteContent

Description

Union of all possible favorite-able content types. Currently only Charity(NPO)

Types

Union Types

Charity

Example

Charity

GivingFundFavoriteContentType

Description

Possible types of content that can be marked favorite

Values

Enum Value Description

NPO

Non-profit organization

Example

"NPO"

GivingFundGoalStrategy

Description

Represents the goal strategy a user has on a Giving Fund

Values

Enum Value Description

FIXED_AMOUNT

User manually enters a specific target amount

INCOME_BASED

Goal is calculated based on user's income

LAST_YEAR_GOAL

Goal is based on previous year's giving

TAX_OPTIMIZATION

Goal is optimized for tax benefits

Example

"FIXED_AMOUNT"

GivingFundInvestment

Description

Investment information about a giving fund

Fields

Field Name Description
account - GivingFundInvestmentAccount The investment account details used to send contributions
allTimeEarnings - GivingFundInvestmentAllTimeEarnings All time earnings for this giving fund investment. If null, it means the user never invested
canModifySubscriptionAt - DateTime The next time the giving fund can modify its portfolio subscription If null, there is no cooldown and it can be modified at any time
currentPortfolio - GivingFundInvestmentPortfolioSubscription The currently active portfolio subscription for this giving fund
holdings - [GivingFundInvestmentSecurity] Assets held in the giving fund at this moment
portfolioHistory - [GivingFundInvestmentPortfolioSubscription] All the historical portfolio subscriptions for this giving fund
positionHistory - GivingFundInvestmentPositionHistory The position history for a giving fund
transitioningPortfolio - Boolean Whether the giving fund is currently transitioning to a new portfolio

Example

{
  "account": GivingFundInvestmentAccount,
  "allTimeEarnings": GivingFundInvestmentAllTimeEarnings,
  "canModifySubscriptionAt": "2007-12-03T10:15:30Z",
  "currentPortfolio": GivingFundInvestmentPortfolioSubscription,
  "holdings": [GivingFundInvestmentSecurity],
  "portfolioHistory": [
    GivingFundInvestmentPortfolioSubscription
  ],
  "positionHistory": GivingFundInvestmentPositionHistory,
  "transitioningPortfolio": true
}

GivingFundInvestmentAccount

Description

Investment account for a giving fund. Has many similarities to banking accounts. It is managed by the investment/brokerage provider (Alpaca) and replicated in in the gql database, table giving_fund.investment_accounts

Fields

Field Name Description
brokerageFirm - String Legal name for the broker managing the account
dtcNumber - String DTC number for the broker managing the account. These are unique to each broker/exchange, similar to bank identifiers
extAccountNumber - String The account number as defined by the investment/brokerage provider
ownerName - String Legal name of the account owner. For DAFs it will always be GoFundMe
taxId - String Tax ID of the account owner. For DAFs it will always be GoFundMe's

Example

{
  "brokerageFirm": "abc123",
  "dtcNumber": "abc123",
  "extAccountNumber": "xyz789",
  "ownerName": "abc123",
  "taxId": "abc123"
}

GivingFundInvestmentAllTimeEarnings

Description

All time earnings for a giving fund investment

Fields

Field Name Description
percentage - Float Relative gain/loss
total - Money Nominal gain/loss

Example

{"percentage": 987.65, "total": Money}

GivingFundInvestmentAssetKind

Description

Possible types of assets a giving fund can be invested into

Values

Enum Value Description

BOND

Bonds

STOCK

Stocks

Example

"BOND"

GivingFundInvestmentPortfolio

Description

Portfolio a giving fund can be invested into. Portfolios are bags of wighted securities and act as curated investment strategies

Fields

Field Name Description
description - String Short description of the portfolio and its contents
historicalReturns - [GivingFundInvestmentPortfolioHistoricalReturns] Historical returns for this portfolio
id - ID! Id of the portfolio
longDescription - String Long description of the portfolio and its contents
name - String User friendly name of the portfolio
securities - [GivingFundInvestmentSecurity] Securities contained in this portfolio
tags - [String] Tags represent features of portfolios such as risk level

Example

{
  "description": "abc123",
  "historicalReturns": [
    GivingFundInvestmentPortfolioHistoricalReturns
  ],
  "id": "4",
  "longDescription": "abc123",
  "name": "abc123",
  "securities": [GivingFundInvestmentSecurity],
  "tags": ["abc123"]
}

GivingFundInvestmentPortfolioHistoricalReturns

Description

Returns for a portfolio over a period of time

Fields

Field Name Description
percentage - Float Percentage gain/loss
years - Int Number of years

Example

{"percentage": 123.45, "years": 987}

GivingFundInvestmentPortfolioSubscription

Description

A subscription representing a giving fund that has been invested into a specific portfolio

Fields

Field Name Description
createdAt - DateTime When the investment started
id - String! Unique UUID for the subscription
portfolio - GivingFundInvestmentPortfolio The portfolio the giving fund has been invested into
unsubscribedAt - DateTime When the investment ended if it did

Example

{
  "createdAt": "2007-12-03T10:15:30Z",
  "id": "xyz789",
  "portfolio": GivingFundInvestmentPortfolio,
  "unsubscribedAt": "2007-12-03T10:15:30Z"
}

GivingFundInvestmentPosition

Description

Position of a giving fund in a portfolio in a specific moment in time

Fields

Field Name Description
contributed - Decimal Amount of money contributed by the giving fund at this point in time minus donations
contributionsAggregate - Decimal Sum of all contributions up until this point in time
date - DateTime Date of the position
donationsAggregate - Decimal Sum of all donations up until this point in time
equity - Decimal Total equity in the giving fund at this point in time

Example

{
  "contributed": Decimal,
  "contributionsAggregate": Decimal,
  "date": "2007-12-03T10:15:30Z",
  "donationsAggregate": Decimal,
  "equity": Decimal
}

GivingFundInvestmentPositionHistory

Description

Positions in the giving fund over time

Fields

Field Name Description
currency - CurrencyCode Currency of all the positions
positions - [GivingFundInvestmentPosition] Positions in the giving fund over time. For now it will be daily

Example

{
  "currency": "AUD",
  "positions": [GivingFundInvestmentPosition]
}

GivingFundInvestmentSecurity

Description

A specific weighted security a giving fund user can invest into as part of a portfolio

Fields

Field Name Description
assetType - GivingFundInvestmentAssetKind Type of asset this security represents
description - String Description of the asset
link - String Link to public information of the asset
name - String User friendly name of the asset
percent - Float Weight of this asset in the portfolio that contains it
symbol - String Public ticker symbol for the asset e.g. GOOGL, AAPL

Example

{
  "assetType": "BOND",
  "description": "abc123",
  "link": "abc123",
  "name": "xyz789",
  "percent": 987.65,
  "symbol": "abc123"
}

GivingFundInvestmentStatus

Description

Possible statuses of a giving fund investment

Values

Enum Value Description

ACTIVE

The giving fund is been invested.

For the moment this means 100% of the contributions to the giving fund will be invested

INACTIVE

The giving fund is not invested.

The money from the invested assets can take some time to arrive in the giving fund balance

Example

"ACTIVE"

GivingFundTransaction

Description

A transaction made by the user to their giving fund

Fields

Field Name Description
accountingDate - String! The timestamp when the transaction was made with NY Time zone
amount - Money! The amount of the transaction
counterParty - GivingFundTransactionCounterParty The party involved in the transaction. For Contribution: this field represents the person who is funding For Donation, this field represents the receiver charity No longer supported
createdAt - DateTime! The timestamp when the transaction was made
details - TransactionDetails!
direction - GivingFundTransactionDirection! Indicate the monetary direction of the transaction
id - ID!
isRecurring - Boolean Indicate if the transaction is a recurring donation
sourceType - GivingFundTransactionSourceType! Indicate the source of the transaction
status - GivingFundTransactionStatus! An indicator that the transaction was completed and counts towards the Giving Fund balance
type - GivingFundTransactionType! Indicate if its a contribution or donation

Example

{
  "accountingDate": "abc123",
  "amount": Money,
  "counterParty": GivingFundTransactionCounterParty,
  "createdAt": "2007-12-03T10:15:30Z",
  "details": GivingFundAcatsContributionDetails,
  "direction": "INCOMING",
  "id": 4,
  "isRecurring": true,
  "sourceType": "ACATS_CONTRIBUTION",
  "status": "FAILED",
  "type": "CONTRIBUTION"
}

GivingFundTransactionAmount

Fields

Field Name Description
direction - GivingFundTransactionDirection! The direction of the amount
value - Money! The amount

Example

{"direction": "INCOMING", "value": Money}

GivingFundTransactionConnection

Description

Connection for paginated giving fund transactions

Fields

Field Name Description
edges - [GivingFundTransactionEdge]
pageInfo - PageInfo!

Example

{
  "edges": [GivingFundTransactionEdge],
  "pageInfo": PageInfo
}

GivingFundTransactionCounterParty

Description

The party involved in the transaction

Fields

Field Name Description
name - String!

Example

{"name": "xyz789"}

GivingFundTransactionDirection

Description

Defines the direction of the transaction

Values

Enum Value Description

INCOMING

OUTGOING

Example

"INCOMING"

GivingFundTransactionEdge

Description

An edge in a paginated giving fund transaction connection

Fields

Field Name Description
cursor - String!
node - GivingFundTransaction!

Example

{
  "cursor": "abc123",
  "node": GivingFundTransaction
}

GivingFundTransactionFilter

Description

Filters for Transactions

Fields

Input Field Description
type - GivingFundTransactionType!

Example

{"type": "CONTRIBUTION"}

GivingFundTransactionOrder

Description

Fields available for sorting giving fund transactions

Values

Enum Value Description

AMOUNT

CREATED_AT

Example

"AMOUNT"

GivingFundTransactionSourceType

Description

Defines the source of the transaction

Values

Enum Value Description

ACATS_CONTRIBUTION

DONATION_REQUEST

EXTERNAL_DAF_CONTRIBUTION

GIFT_TRANSACTION

PAYMENT_CONTRIBUTION

Example

"ACATS_CONTRIBUTION"

GivingFundTransactionStatus

Description

Defines the status of the transaction

Values

Enum Value Description

FAILED

PENDING

SUCCEEDED

Example

"FAILED"

GivingFundTransactionSummaries

Fields

Field Name Description
totalContribution - GivingFundTransactionAmount! The total amount of contributions
totalDonation - GivingFundTransactionAmount! The total amount of donations

Example

{
  "totalContribution": GivingFundTransactionAmount,
  "totalDonation": GivingFundTransactionAmount
}

GivingFundTransactionSummaryFilter

Fields

Input Field Description
from - Date! The start date of the range (inclusive)
to - Date! The end date of the range (exclusive)

Example

{
  "from": "2007-12-03",
  "to": "2007-12-03"
}

GivingFundTransactionType

Description

Defines the type of the transaction

Values

Enum Value Description

CONTRIBUTION

DONATION

Example

"CONTRIBUTION"

Goal

Fields

Field Name Description
date - DateTime
goalAmount - Money!
source - GoalLogSource

Example

{
  "date": "2007-12-03T10:15:30Z",
  "goalAmount": Money,
  "source": "SYSTEM"
}

GoalLogSource

Description

The source of the goal log referenced by the source field

Values

Enum Value Description

SYSTEM

The goal log change came from the system

USER

The goal log change came from a user

Example

"SYSTEM"

ID

Description

The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID

Example

4

IncomeBasedGoalDetails

Description

Details for income-based contribution goals

Fields

Field Name Description
desiredIncomeContributionPercentage - Decimal The percentage of income the user wants to contribute (0-100)
estimatedIncome - Decimal The user's estimated annual income

Example

{
  "desiredIncomeContributionPercentage": Decimal,
  "estimatedIncome": Decimal
}

Int

Description

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1

Example

123

JsonSerializedVariables

Description

Default Coaching Action Item Variables object

Fields

Field Name Description
jsonString - String! Serialized Action Variables map

Example

{"jsonString": "xyz789"}

Location

Fields

Field Name Description
city - String
coordinates - Coordinates
countryCode - CountryCode
postalCode - String
statePrefix - String

Example

{
  "city": "xyz789",
  "coordinates": Coordinates,
  "countryCode": "US",
  "postalCode": "xyz789",
  "statePrefix": "xyz789"
}

MediaType

Description

The type of media referenced by the mediaUrl field on a fundraiser

Values

Enum Value Description

FACEBOOK_AWS

Facebook slideshow posted to the user's account, hosted on AWS

FACEBOOK_ONLY

Facebook video updates only uploaded to the user's Facebook account

FACEBOOK_PAGE_AWS

Facebook slideshow hosted on GoFundMe's Facebook page, utilizing AWS for hosting

FACEBOOK_PAGE_RACK

Facebook slideshow hosted on GoFundMe's Facebook page, indicating specialized storage or optimization

FACEBOOK_RACK

Facebook slideshow posted to the user's account, indicating specialized storage or optimization

GFM_MUX_CLIPS

The mediaUrl points to a Mux resource owned by GoFundMe, for video hosting or streaming

PHOTO_AWS

The mediaUrl points to an AWS resource owned by GoFundMe

PHOTO_GFMPRO

The mediaUrl points to a photo hosted on GFM Pro's CDN

PHOTO_RACK

The mediaUrl points to a photo stored on GoFundMe's hosting platform

UNKNOWN

There is no data about the mediaUrl on the fundraiser

VIMEO

The mediaUrl points to a Vimeo video

YOUTUBE

The mediaUrl points to a YouTube video

Example

"FACEBOOK_AWS"

Money

Description

A representation of a monetary amount. Amount is a decimal represented as a string with 0, 1, or 2 decimal places

Fields

Field Name Description
amount - Decimal!
currencyCode - CurrencyCode!

Example

{"amount": Decimal, "currencyCode": "AUD"}

NoActor

Description

None actor. Used for system activities that have no discernible actor

Fields

Field Name Description
id - ID! The id of the None actor

Example

{"id": 4}

Node

NotificationActivityConnection

Description

Connection for notification activities

Fields

Field Name Description
edges - [NotificationActivityEdge] List of notification activities
pageInfo - PageInfo! Pagination meta-information

Example

{
  "edges": [NotificationActivityEdge],
  "pageInfo": PageInfo
}

NotificationActivityEdge

Description

Each edge in the notification activity connection

Fields

Field Name Description
cursor - String Opaque cursor for pagination
node - NotificationFeedActivity The notification activity node

Example

{
  "cursor": "xyz789",
  "node": NotificationFeedActivity
}

NotificationFeedActivity

Description

https://gofundme.atlassian.net/wiki/spaces/Incubation/pages/4674027655/Notification+Aggregation+Examples

A NotificationFeedActivity represent either a single activity or the collapsed version of multiple similar activities. The activities have been grouped based on their attributes such that each NotificationFeedActivity should be 1:1 with each in-app notification displayed by the client. Activities will always have been grouped by verb, so clients should base their notification language from there and then adjust given the actors/targets/metadata/counts. Clients should be prepared to fail gracefully for verbs or permutations they do not recognize

Fields

Field Name Description
actors - [Actor] The complete set of actors that were involved in the notification. The same actor can appear twice if they performed the same action multiple times e.g. multiple donations to the same fundraiser
attributionId - ID Attribution id corresponding to the actor on the activity
createdAt - DateTime The time the notification was first created. If a notification is re-aggregated (due to additional actors performing the same activity), this timestamp will not change
distinctActorCount - Int The number of distinct actors in the actors list
distinctMetadataCount - Int The distinct number of metadata variations associated with the notification activity. For the near future, this will always be 1 because we are grouping by target. In the future we may support notifications that have multiple metadata variations e.g. Bob pinned 5 new entries to their profile
distinctTargetCount - Int The distinct number of targets associated with the notification activity. For the near future, this will always be 1 because we are grouping by target. In the future we may support notifications that have multiple targets e.g. Bob donated to 5 fundraisers
id - ID! The id of the notification. This ID can be used in subsequent mutations to mark the notification as read
isRead - Boolean Indicates whether or not this notification has been read
isSeen - Boolean Indicates whether or not this notification has been seen. This property is updated implicitly when the notification is queried
metadata - ActivityMetadata The metadata associated with a notification activity. For activities that cannot be grouped by target, they will have been grouped by their metadata
target - ActivityTarget The primary target associated with the notification activity. In most cases, the activities in the will have been grouped by this target
updatedAt - DateTime The time the notification was last updated. If a notification is re-aggregated (due to additional actors performing the same activity), this timestamp will reflect that change
verb - ActivityVerb The primary verb associated with the notification activity

Example

{
  "actors": [Anonymous],
  "attributionId": "4",
  "createdAt": "2007-12-03T10:15:30Z",
  "distinctActorCount": 987,
  "distinctMetadataCount": 123,
  "distinctTargetCount": 987,
  "id": 4,
  "isRead": false,
  "isSeen": false,
  "metadata": ActivityMetadata,
  "target": Cause,
  "updatedAt": "2007-12-03T10:15:30Z",
  "verb": "CAUSES_UPDATED"
}

OAuthApplication

Fields

Field Name Description
approvedCallBackUrls - [String] The set of FQDN's that will be permitted in the redirect_uri query parameter when initiating an /authorize request. Any redirect_uri provided that is not in this set will be rejected
clientId - String A OAuth2.0 standard clientId, which can be used to initiate an /authorize request
clientSecret - String A OAuth2.0 standard clientSecret, which can be used to exchange authorization codes for access_tokens
id - ID
scopes - [OAuthScope] The set of scopes that this application is permitted to request

Example

{
  "approvedCallBackUrls": ["xyz789"],
  "clientId": "xyz789",
  "clientSecret": "xyz789",
  "id": "4",
  "scopes": [OAuthScope]
}

OAuthScope

Description

A distinct permission that authorizes a single type of operation

Fields

Field Name Description
description - String Textual description of the operation this scope authorizes e.g. Create a Fundraiser
name - String The name of the scope as it will appear on the access_token e.g. fundraiser:create
optional - Boolean Whether or not this scope is reject-able when navigating the consent flow

Example

{
  "description": "abc123",
  "name": "xyz789",
  "optional": false
}

PageInfo

Fields

Field Name Description
endCursor - String
hasNextPage - Boolean!
hasPreviousPage - Boolean!
startCursor - String

Example

{
  "endCursor": "xyz789",
  "hasNextPage": true,
  "hasPreviousPage": true,
  "startCursor": "abc123"
}

Partner

Fields

Field Name Description
allowCobranding - Boolean! Whether this partner wants attributed fundraisers to show co-branding
apiKeys - [PartnerApiKey]
code - String!
contactEmail - String
defaultCobranding - Boolean! Initial state of cobranding on new campaigns
designatedRecipient - DesignatedRecipient Entity that will receive the funds from the fundraiser created by a partner
donations - DonationConnection A flat list of donations belonging to all of a partner's affiliated fundraisers. This query is only available if authenticating via API Key
Arguments
after - String
before - String
first - Int
last - Int
order - DonationOrder
fundraisers - FundraiserConnection List of fundraisers attributed to the partner. This query is only available if authenticating via API Key
Arguments
after - String
before - String
first - Int
last - Int
order - FundraiserOrder
id - ID!
isActive - Boolean
logoUrl - Url!
metrics - PartnerMetrics
name - String!
oAuthApplication - OAuthApplication A partner's registered OAuth Application. The OAuth Application contains the information necessary to exercise a standard OAuth2.0 Authorization Code flow. This query is only available to users with permission to view the Partner Dashboard
regularLogoUrl - Url
reports - PartnerReport
revenueShare - Decimal

Example

{
  "allowCobranding": false,
  "apiKeys": [PartnerApiKey],
  "code": "xyz789",
  "contactEmail": "abc123",
  "defaultCobranding": true,
  "designatedRecipient": DesignatedRecipient,
  "donations": DonationConnection,
  "fundraisers": FundraiserConnection,
  "id": "4",
  "isActive": false,
  "logoUrl": Url,
  "metrics": PartnerMetrics,
  "name": "xyz789",
  "oAuthApplication": OAuthApplication,
  "regularLogoUrl": Url,
  "reports": PartnerReport,
  "revenueShare": Decimal
}

PartnerAffiliation

Fields

Input Field Description
code - String A Partner's unique referral code
isTestData - Boolean Intended for external developers, and CI/CD pipelines. This flag will mark the fundraiser as test data. Fundraisers marked as test data will be deleted after two weeks
sourceApplication - String This information will be used in future communications with the user. Allows partners to optionally provide a sourceApplication for their created fundraiser. For example, "Thank you for joining us from {source}, click here to manage your fundraiser."
thirdPartyId - String An optional third-party ID a partner can associate to a referral
thirdPartyUrl - String An optional origin the partner can associate to their referral

Example

{
  "code": "xyz789",
  "isTestData": false,
  "sourceApplication": "abc123",
  "thirdPartyId": "abc123",
  "thirdPartyUrl": "abc123"
}

PartnerApiKey

Fields

Field Name Description
createdAt - DateTime
display - String
id - ID!
lastUsedAt - DateTime
name - String
status - Boolean

Example

{
  "createdAt": "2007-12-03T10:15:30Z",
  "display": "xyz789",
  "id": "4",
  "lastUsedAt": "2007-12-03T10:15:30Z",
  "name": "xyz789",
  "status": true
}

PartnerDonationsAttributionReport

Description

The attribution report for a partner's donations

Fields

Field Name Description
status - PartnerDonationsAttributionReportStatus The status of the report. Possible values: [PENDING|FINISHED|FAILED]
url - String The URL of the donations attribution report

Example

{"status": "FAILED", "url": "abc123"}

PartnerDonationsAttributionReportStatus

Description

The status of the donations attribution report

Values

Enum Value Description

FAILED

An error occurred creating the report

FINISHED

The report was successfully created

PENDING

The report is still being created

Example

"FAILED"

PartnerDonationsAttributionsMetrics

Description

Donation metrics attributed to a partner over a time period

Fields

Field Name Description
donationCount - Int Number of attributed donations in the date range
financialMetrics - [PartnerFinancialMetrics] Aggregated donation volume in different currencies

Example

{
  "donationCount": 123,
  "financialMetrics": [PartnerFinancialMetrics]
}

PartnerDonationsFilter

Fields

Input Field Description
charityId - ID
dateFrom - DateTime start date (inclusive)
dateTo - DateTime end date (not inclusive)
includeRefunds - Boolean
paypalNonprofitId - ID

Example

{
  "charityId": 4,
  "dateFrom": "2007-12-03T10:15:30Z",
  "dateTo": "2007-12-03T10:15:30Z",
  "includeRefunds": true,
  "paypalNonprofitId": "4"
}

PartnerDonationsReport

Fields

Field Name Description
status - PartnerDonationsReportStatus
url - String

Example

{"status": "FAILED", "url": "xyz789"}

PartnerDonationsReportStatus

Values

Enum Value Description

FAILED

FINISHED

PENDING

Example

"FAILED"

PartnerExternalOrganizer

Fields

Field Name Description
firstName - String
inviteAcceptedAt - DateTime
lastName - String
organizerInviteUrl - Url The invitation link for the user to organize the fundraiser that was created for them. This is only queryable within the publish mutation response

Example

{
  "firstName": "abc123",
  "inviteAcceptedAt": "2007-12-03T10:15:30Z",
  "lastName": "abc123",
  "organizerInviteUrl": Url
}

PartnerExternalOrganizerInput

Description

Input for partners to provide info about the user they are creating a fundraiser on behalf of

Fields

Input Field Description
email - String!
emailOptIn - Boolean!
firstName - String!
lastName - String!
locale - String The locale in IETF's BCP 47 standard (e.g. en-US)

Example

{
  "email": "abc123",
  "emailOptIn": true,
  "firstName": "xyz789",
  "lastName": "abc123",
  "locale": "abc123"
}

PartnerFinancialMetrics

Fields

Field Name Description
currencyCode - String
grossDonationVolume - Decimal
grossDonationVolumeUsd - Decimal
netDonationVolume - Decimal
netDonationVolumeUsd - Decimal
refundAmount - Decimal
refundAmountUsd - Decimal

Example

{
  "currencyCode": "abc123",
  "grossDonationVolume": Decimal,
  "grossDonationVolumeUsd": Decimal,
  "netDonationVolume": Decimal,
  "netDonationVolumeUsd": Decimal,
  "refundAmount": Decimal,
  "refundAmountUsd": Decimal
}

PartnerFundraiserFilter

Fields

Input Field Description
charityId - ID
dateFrom - DateTime start publishedAt date (inclusive)
dateTo - DateTime end publishedAt date (not inclusive)
paypalNonprofitId - ID
statuses - [Status!] The fundraiser statuses to include. If not provided all statuses will be included

Example

{
  "charityId": "4",
  "dateFrom": "2007-12-03T10:15:30Z",
  "dateTo": "2007-12-03T10:15:30Z",
  "paypalNonprofitId": "4",
  "statuses": ["ACTIVE"]
}

PartnerFundraiserInput

Description

All partner related data to be associated with the fundraiser

Fields

Input Field Description
campaignRegistration - CampaignRegistrationInput For Campaign Registration Form inputs
designatedRecipient - DesignatedRecipientInput Info to identify the designated recipient for the fundraiser

Example

{
  "campaignRegistration": CampaignRegistrationInput,
  "designatedRecipient": DesignatedRecipientInput
}

PartnerFundraiserMetrics

Fields

Field Name Description
donationCount - Int
financialMetrics - [PartnerFinancialMetrics]
fundraisersStarted - Int

Example

{
  "donationCount": 987,
  "financialMetrics": [PartnerFinancialMetrics],
  "fundraisersStarted": 987
}

PartnerFundraisersReport

Description

The fundraisers report for a partner

Fields

Field Name Description
status - PartnerFundraisersReportStatus The status of the report. Possible values: [PENDING|FINISHED|FAILED]
url - String The URL of the fundraisers report

Example

{"status": "FAILED", "url": "xyz789"}

PartnerFundraisersReportStatus

Description

The status of the fundraisers report

Values

Enum Value Description

FAILED

An error occurred creating the report

FINISHED

The report was successfully created

PENDING

The report is still being created

Example

"FAILED"

PartnerLifetimeMetrics

Fields

Field Name Description
totalAmountRaisedByCurrency - [Money]
totalAmountRaisedUSD - Decimal
totalDonationCount - Int
totalFundraisersStarted - Int

Example

{
  "totalAmountRaisedByCurrency": [Money],
  "totalAmountRaisedUSD": Decimal,
  "totalDonationCount": 123,
  "totalFundraisersStarted": 987
}

PartnerMetrics

Fields

Field Name Description
donationsAttributionsMetrics - PartnerDonationsAttributionsMetrics
Arguments
from - DateTime!
to - DateTime!
fundraiserLifetimeMetrics - PartnerLifetimeMetrics
fundraiserMetrics - PartnerFundraiserMetrics
Arguments
from - DateTime!
to - DateTime!

Example

{
  "donationsAttributionsMetrics": PartnerDonationsAttributionsMetrics,
  "fundraiserLifetimeMetrics": PartnerLifetimeMetrics,
  "fundraiserMetrics": PartnerFundraiserMetrics
}

PartnerReport

Fields

Field Name Description
donationsAttributionReport - PartnerDonationsAttributionReport Retrieve a donations attribution report
Arguments
exportId - String!
donationsReport - PartnerDonationsReport
Arguments
exportId - String!
fundraisersReport - PartnerFundraisersReport Retrieve a fundraisers report
Arguments
exportId - String!

Example

{
  "donationsAttributionReport": PartnerDonationsAttributionReport,
  "donationsReport": PartnerDonationsReport,
  "fundraisersReport": PartnerFundraisersReport
}

PartnerUpload

Fields

Field Name Description
createdAt - DateTime!
fileName - String!
fileSize - Int!
fileType - String!
id - ID!
url - String!

Example

{
  "createdAt": "2007-12-03T10:15:30Z",
  "fileName": "abc123",
  "fileSize": 987,
  "fileType": "xyz789",
  "id": 4,
  "url": "xyz789"
}

PeopleRecommendations

Description

Response containing ranked people recommendations

Fields

Field Name Description
recommendations - [PersonConnection!] Ranked list of recommended people based on connection actions
totalCount - Int Total count of recommendations

Example

{"recommendations": [PersonConnection], "totalCount": 123}

PersonChatDetails

Fields

Field Name Description
chatUserId - String!
lastActive - DateTime

Example

{
  "chatUserId": "abc123",
  "lastActive": "2007-12-03T10:15:30Z"
}

PersonChatToken

Fields

Field Name Description
chatLoginToken - String!
chatUserId - String!

Example

{
  "chatLoginToken": "abc123",
  "chatUserId": "xyz789"
}

PersonCommunicationFundraiserPreference

Description

A user's preference for receiving messages for a fundraiser

Fields

Field Name Description
channel - String! Messaging channel -- i.e. EMAIL, SMS, PUSH
enabled - Boolean! Flag whether the user wants to receive comms or not
fundraiserId - ID! Fundraiser to which this preference is associated to

Example

{
  "channel": "abc123",
  "enabled": true,
  "fundraiserId": 4
}

PersonConnection

Description

A recommended person with ranking and connection context details

Fields

Field Name Description
actions - [ConnectionAction!]! Aggregated actions that contributed to this recommendation with their counts and scores
personId - ID! Unique identifier for the recommended person
ranking - Int! Zero-based ranking position (0 = highest ranked, 1 = second highest, etc.)
totalScore - Float! Overall connection score

Example

{
  "actions": [ConnectionAction],
  "personId": "4",
  "ranking": 123,
  "totalScore": 987.65
}

PersonConsent

Description

Person Consent is a type the resents the channels a person has consented to be contacted through

This might be EMAIL, SMS, PUSH

Fields

Field Name Description
chatConsent - PersonConsentStatus! Global chat consent
emailConsent - PersonConsentStatus! Global email consent
personId - ID! The person id to GFM
subscriptions - [PersonSubscription!] Subscription Preferences the personId has

Example

{
  "chatConsent": "DISABLED",
  "emailConsent": "DISABLED",
  "personId": "4",
  "subscriptions": [PersonSubscription]
}

PersonConsentStatus

Values

Enum Value Description

DISABLED

ENABLED

PENDING

Example

"DISABLED"

PersonRolesForFundraiser

Fields

Field Name Description
isBene - Boolean!
isDonor - Boolean!
isOrganizer - Boolean!
isTeamMember - Boolean!

Example

{"isBene": true, "isDonor": false, "isOrganizer": false, "isTeamMember": false}

PersonSubscription

Fields

Field Name Description
channel - String!
name - String!
optIn - Boolean!
personId - ID!
subscriptionGroupId - ID!

Example

{
  "channel": "abc123",
  "name": "xyz789",
  "optIn": false,
  "personId": "4",
  "subscriptionGroupId": 4
}

PhoneInfo

Fields

Field Name Description
consent - Consent! Information about the user's consent to be contacted via phone please use PersonConsent
number - String! phone number
phoneNumberLast4 - String! Last 4 digits of the phone number
verified - Boolean! Is the phone number verified

Example

{
  "consent": Consent,
  "number": "xyz789",
  "phoneNumberLast4": "abc123",
  "verified": true
}

Photo

Fields

Field Name Description
caption - String Caption for the photo
createdAt - DateTime! The date and time when the photo was created
filename - String! Name of the file
id - ID!
mediaId - String The slug of the YouTube video. Only applicable if the photo is a thumbnail for a YouTube video
mediaType - MediaType! Type of media the photo represents
photoType - PhotoType! Enumerated type of the photo indicating where it is used or its purpose
scaled - PhotoScaled Scaled versions of the photo for different resolutions and aspect ratios. These are not utilized for profile photos
status - PhotoStatus! Status of the photo, indicating if it is active or deleted
url - Url! URL where the photo is accessible

Example

{
  "caption": "xyz789",
  "createdAt": "2007-12-03T10:15:30Z",
  "filename": "abc123",
  "id": 4,
  "mediaId": "abc123",
  "mediaType": "FACEBOOK_AWS",
  "photoType": "CONTENT",
  "scaled": PhotoScaled,
  "status": "ACTIVE",
  "url": Url
}

PhotoCounts

Fields

Field Name Description
coPhotos - Int!
communityPhotos - Int!
photos - Int!

Example

{"coPhotos": 987, "communityPhotos": 123, "photos": 987}

PhotoCropPoints

Description

Photo crop points for different orientations. Contains coordinates for portrait and landscape focal points

Fields

Field Name Description
imageID - String! Image identifier
landscapeX - Float Landscape X coordinate, null if no landscape crop exists
landscapeY - Float Landscape Y coordinate, null if no landscape crop exists
portraitX - Float Portrait X coordinate, null if no portrait crop exists
portraitY - Float Portrait Y coordinate, null if no portrait crop exists

Example

{
  "imageID": "xyz789",
  "landscapeX": 987.65,
  "landscapeY": 123.45,
  "portraitX": 123.45,
  "portraitY": 123.45
}

PhotoScaled

Fields

Field Name Description
fourByThree1200 - Url
oneByOne960 - Url 3x2-640
sixteenByNine720 - Url 3x2-1200
threeByTwo1200 - Url 4x3-1200
threeByTwo640 - Url 3x2-720
threeByTwo720 - Url 16x9-720

Example

{
  "fourByThree1200": Url,
  "oneByOne960": Url,
  "sixteenByNine720": Url,
  "threeByTwo1200": Url,
  "threeByTwo640": Url,
  "threeByTwo720": Url
}

PhotoStatus

Values

Enum Value Description

ACTIVE

0

DELETED

Example

"ACTIVE"

PhotoType

Values

Enum Value Description

CONTENT

3

DESCRIPTION

0

FACEBOOK_SLIDESHOW

2

GALLERY

7

MAIN

PROFILE

6

TEAM

4

UPDATE

1

Example

"CONTENT"

PreselectedContactData

Description

Contact data used for Preselecting in Nudge Text Suggestions

Fields

Field Name Description
channel - ContactShareChannel! Contact Data channel type
firstName - String Contact first name
id - ID! Id of contact data
lastName - String Contact last name
value - String! Contact data value (phoneNumber/email)

Example

{
  "channel": "EMAIL",
  "firstName": "abc123",
  "id": 4,
  "lastName": "abc123",
  "value": "xyz789"
}

Profile

Fields

Field Name Description
activeEntries - [ProfileActiveEntry!] Active Entries
activityFeed - ActivityConnection A profile's public activity feed. This feed contains all of the profile owner's activity on the platform Use profile.feed
Arguments
after - String
before - String
first - Int
last - Int
order - ActivityOrder
backgroundImageType - ProfileBackgroundImageTypeValues Profile background image type
backgroundImageUrl - Url Profile background image url
bio - String
causes - [ProfileCause!] Causes that the user is supporting
feed - Feed A profile's public feed. This feed contains all of the profile owner's activity on the platform
followerCount - Int A profile's follower's count
followers - FollowerConnection A profile's followers list (all the followers of the specified profile)
Arguments
after - String
before - String
first - Int
last - Int
order - FollowerOrder
following - FollowerConnection A profile's followed list (all the entities that the profile owner is following)
Arguments
after - String
before - String
first - Int
last - Int
order - FollowerOrder
followingCount - Int A profile's followed's count
hiddenEntries - [ProfileHiddenEntry!] Hidden Entries
id - ID!
image - Url Profile image url
inspiredPeople - [ProfileInspiredPerson!] Most recent 3 inspired people
isEditable - Boolean!
isNew - Boolean Determines if a profile was just created or an existing one
mode - ProfileModeValues!
name - String
onboardingCompleted - Boolean
pinnedEntries - [ProfilePinnedEntry!] Pinned Entries
postCount - Int Count of user posts made on this profile
posts - UserPostConnection User posts made on this profile
Arguments
after - String
before - String
first - Int
last - Int
order - UserPostOrder
slug - String A profile custom slug. This will appear in the profile public URL
socials - [ProfileSocial!] Customizable Social platform links
status - ProfileStatusValues!
tagLine - String
totalInspiredPeopleCount - Int Unique share view count
viewerHasBlocked - Boolean Determines if the viewer has blocked the profile
viewerIsBlocked - Boolean Determines if the profile owner has blocked the viewer
viewerIsFollowing - Boolean Determines if the viewer is following the profile
viewerIsSubscribedToNotifications - Boolean Determines if the viewer has notifications enabled for the profile

Example

{
  "activeEntries": [ProfileActiveEntry],
  "activityFeed": ActivityConnection,
  "backgroundImageType": "CUSTOM",
  "backgroundImageUrl": Url,
  "bio": "abc123",
  "causes": [ProfileCause],
  "feed": Feed,
  "followerCount": 123,
  "followers": FollowerConnection,
  "following": FollowerConnection,
  "followingCount": 123,
  "hiddenEntries": [ProfileHiddenEntry],
  "id": 4,
  "image": Url,
  "inspiredPeople": [ProfileInspiredPerson],
  "isEditable": false,
  "isNew": false,
  "mode": "PRIVATE",
  "name": "abc123",
  "onboardingCompleted": false,
  "pinnedEntries": [ProfilePinnedEntry],
  "postCount": 987,
  "posts": UserPostConnection,
  "slug": "xyz789",
  "socials": [ProfileSocial],
  "status": "ACTIVE",
  "tagLine": "abc123",
  "totalInspiredPeopleCount": 123,
  "viewerHasBlocked": true,
  "viewerIsBlocked": false,
  "viewerIsFollowing": true,
  "viewerIsSubscribedToNotifications": true
}

ProfileActiveEntry

Fields

Field Name Description
contentData - ProfileEntryContent
contentId - String!
contentType - ProfileEntryContentTypeValues!
id - ID!
position - Int!
smartlinkId - String Smartlink id is available only when the card contentType is Fundraiser

Example

{
  "contentData": Charity,
  "contentId": "abc123",
  "contentType": "FUNDRAISER",
  "id": 4,
  "position": 987,
  "smartlinkId": "xyz789"
}

ProfileBackgroundImageTypeValues

Values

Enum Value Description

CUSTOM

DARK_GREEN

DEFAULT

Example

"CUSTOM"

ProfileCause

Fields

Field Name Description
id - ID!
position - Int!
type - ProfileCauseTypeValues!

Example

{
  "id": "4",
  "position": 987,
  "type": "ANIMALS"
}

ProfileCauseTypeValues

Values

Enum Value Description

ANIMALS

ARTS_AND_CULTURE

COMMUNITY

CRISIS_RELIEF

EDUCATION

ENVIRONMENT

FAITH

MEDICAL

SOCIAL_ADVOCACY

Example

"ANIMALS"

ProfileCauseUpdatedMetadata

Description

The metadata that will appear alongside the CAUSES_UPDATED verb

Fields

Field Name Description
causes - [ProfileCause] The causes associated with the CAUSES_UPDATED activity

Example

{"causes": [ProfileCause]}

ProfileEntryContent

Types

Union Types

Charity

Fundraiser

Example

Charity

ProfileEntryContentTypeValues

Values

Enum Value Description

FUNDRAISER

NPO

Example

"FUNDRAISER"

ProfileHiddenEntry

Fields

Field Name Description
contentData - ProfileEntryContent
contentId - String!
contentType - ProfileEntryContentTypeValues!
strategyType - String!

Example

{
  "contentData": Charity,
  "contentId": "xyz789",
  "contentType": "FUNDRAISER",
  "strategyType": "xyz789"
}

ProfileInspiredPerson

Fields

Field Name Description
firstName - String!
image - Url
lastName - String!

Example

{
  "firstName": "xyz789",
  "image": Url,
  "lastName": "xyz789"
}

ProfileListUpdatedMetadata

Description

The metadata that will appear alongside the LIST_UPDATED verb

Fields

Field Name Description
card - ProfileActiveEntry The card associated with the LIST_UPDATED activity

Example

{"card": ProfileActiveEntry}

ProfileModeValues

Values

Enum Value Description

PRIVATE

PUBLIC

Example

"PRIVATE"

ProfilePinUpdatedMetadata

Description

The metadata that will appear alongside the PIN_UPDATED verb

Fields

Field Name Description
pin - ProfilePinnedEntry The pin associated with the PIN_UPDATED activity

Example

{"pin": ProfilePinnedEntry}

ProfilePinnedEntry

Fields

Field Name Description
contentData - ProfileEntryContent
contentId - String!
contentType - ProfileEntryContentTypeValues!
id - ID!
message - String
smartlinkId - String Smartlink id is available only when the pin contentType is Fundraiser

Example

{
  "contentData": Charity,
  "contentId": "xyz789",
  "contentType": "FUNDRAISER",
  "id": 4,
  "message": "abc123",
  "smartlinkId": "xyz789"
}

ProfileSocial

Fields

Field Name Description
id - ID!
link - String!
position - Int!
type - ProfileSocialTypeValues!

Example

{
  "id": "4",
  "link": "abc123",
  "position": 123,
  "type": "FACEBOOK"
}

ProfileSocialTypeValues

Values

Enum Value Description

FACEBOOK

INSTAGRAM

LINKEDIN

LINKTREE

PILLAR

GFM Partner

SPOTIFY

TIKTOK

TWITCH

X

YOUTUBE

Example

"FACEBOOK"

ProfileStatusValues

Values

Enum Value Description

ACTIVE

SCHEDULED_TO_DELETE

Profile is scheduled to be deleted, but not yet deleted

SUSPEND

Example

"ACTIVE"

ProjectType

Values

Enum Value Description

AON

CHARITY

DIRECT_TO_CHARITY

GIVING_FUND

HANDLE

PERSONAL

UNKNOWN

Example

"AON"

ProviderConnection

Description

A connection between a User and an authentication provider, like Google, Apple, Facebook, etc. Not to be confused with the GraphQL Relay Connection spec. This 'connection' is unrelated to pagination, it refers to the connection between the User and the auth provider

Fields

Field Name Description
contactsImportStatus - ContactsImportStatus!
id - ID
isConnected - Boolean!
lastSync - DateTime
provider - ContactProvider!

Example

{
  "contactsImportStatus": "COMPLETED",
  "id": 4,
  "isConnected": false,
  "lastSync": "2007-12-03T10:15:30Z",
  "provider": "Apple"
}

ReactionCount

Description

Reaction count for an activity

Fields

Field Name Description
count - Int!
type - ReactionType!

Example

{"count": 123, "type": "HEART"}

ReactionType

Description

Our supported reaction types. Any of these reactions can be added to an activity

Values

Enum Value Description

HEART

Example

"HEART"

ShareActivityFilter

Fields

Input Field Description
persona - ShareHubPersona
platform - [ShareHubPlatform]

Example

{"persona": "Anonymous", "platform": ["Copy_Link"]}

ShareHistoryConnection

Fields

Field Name Description
edges - [ShareHistoryEdge]
pageInfo - PageInfo

Example

{
  "edges": [ShareHistoryEdge],
  "pageInfo": PageInfo
}

ShareHistoryEdge

Fields

Field Name Description
cursor - String
node - ShareHistoryItem

Example

{
  "cursor": "abc123",
  "node": ShareHistoryItem
}

ShareHistoryItem

Description

A history record of a Share intent

Fields

Field Name Description
datetime - DateTime! Date when the Share Intent was recordde
donationAmountInspired - Int Sum of donations that were attributed to the ShareIntent
fundSharer - FundSharerData Sharer information
id - ID! Share History Item id
shareOrigin - ShareOrigin! Medium from which the share was performed
shareSource - ShareHubPlatform If Share Origin is ShareSheet: Source platform which used to share
shareTargets - [String] If Share Origin is Invitation: Contact Name of the invitation targets
sharerPersona - ShareHubPersona! Type of person who performed the share related to the fundraiser Organizer
sharesInspired - Int Sum of shares that were attributed to the ShareIntent
totalShareTargetCount - Int If Sharer Origin is Invitation: Total count of Invitation targets
viewsInspired - Int Sum of views that were attributed to the ShareIntent

Example

{
  "datetime": "2007-12-03T10:15:30Z",
  "donationAmountInspired": 987,
  "fundSharer": FundSharerData,
  "id": "4",
  "shareOrigin": "Invitation",
  "shareSource": "Copy_Link",
  "shareTargets": ["abc123"],
  "sharerPersona": "Anonymous",
  "sharesInspired": 123,
  "totalShareTargetCount": 123,
  "viewsInspired": 123
}

ShareHubPersona

Description

Persona types of the Sharer

Values

Enum Value Description

Anonymous

Unidentified user who shared the fundraiser

Contact

Organizer's Contact

Organizer

Fundraiser Organizer

Example

"Anonymous"

ShareHubPlatform

Description

Platforms from which the share was performed

Values

Enum Value Description

Copy_Link

Email

Embed

No longer supported

Facebook_Messenger

Facebook_Post

Facebook_Reel

Facebook_Stories

No longer supported

Facebook_Story

Instagram

No longer supported

Instagram_Deep_Link

Instagram_Post

Instagram_Reel

Instagram_Story

LinkedIn

More

Native

Nextdoor

Other

Print_Poster

Qr_Code

Sms

Snapchat

Streaming

Streaming_Widget

No longer supported

Text

No longer supported

Tiktok

Twitter

Whatsapp

Youtube_Shorts

Example

"Copy_Link"

ShareOrigin

Description

Surfaces from which the share was performed

Values

Enum Value Description

Invitation

Connected Accounts share

ShareSheet

Fundraiser Share Sheet share

Example

"Invitation"

SharePlatform

Values

Enum Value Description

Copy_Link

Email

Facebook

Facebook_Messenger

Instagram

LinkedIn

More_Options

Nextdoor

SMS

Snapchat

Social_Media

TikTok

Twitter

Whatsapp

YouTube

Example

"Copy_Link"

ShareStatsFilter

Fields

Input Field Description
persona - StatsPersonaFilter
platform - ShareHubPlatform

Example

{"persona": "Organizer", "platform": "Copy_Link"}

ShowControls

Description

Show controls configuration for the community. Controls visible features of the community page

Fields

Field Name Description
backgroundColor - String
enabledMetrics - [String]
followCtaText - FollowCtaText
heroCtaColor - String
heroFontColor - String
heroImageMask - ShowControlsHeroImageMask
showAboutSection - Boolean
showActivityTab - Boolean
showCommunityBy - Boolean
showDonateCta - Boolean
showFollowCta - Boolean
showFundraisersTab - Boolean
showHeroImage - Boolean
showImpactModule - Boolean
showNonprofitsTab - Boolean
showShareCta - Boolean

Example

{
  "backgroundColor": "abc123",
  "enabledMetrics": ["xyz789"],
  "followCtaText": "FOLLOW",
  "heroCtaColor": "xyz789",
  "heroFontColor": "abc123",
  "heroImageMask": "SEGMENT",
  "showAboutSection": true,
  "showActivityTab": false,
  "showCommunityBy": false,
  "showDonateCta": true,
  "showFollowCta": false,
  "showFundraisersTab": false,
  "showHeroImage": true,
  "showImpactModule": false,
  "showNonprofitsTab": true,
  "showShareCta": true
}

ShowControlsHeroImageMask

Description

Hero image mask for the community. Controls the shape of the hero image

Values

Enum Value Description

SEGMENT

SQUARE

Example

"SEGMENT"

ShowFeatures

Fields

Field Name Description
showAddress - Boolean
showLinks - Boolean
showLogo - Boolean
showMission - Boolean

Example

{
  "showAddress": false,
  "showLinks": false,
  "showLogo": true,
  "showMission": true
}

SmartGoalsOptInState

Description

The state of smart goals referenced by the smartGoalsOptIn field on a fundraiser

Values

Enum Value Description

DISABLED

The fundraiser has smart goals available and the user has opted out

ENABLED

The fundraiser has smart goals available and the user has opted in

NOT_ELIGIBLE

The fundraiser is not eligible for smart goals (user has not opted in or out), do not show smart goals at all

Example

"DISABLED"

StatsPersonaFilter

Values

Enum Value Description

Organizer

Supporters

Example

"Organizer"

Status

Values

Enum Value Description

ACTIVE

DELETED

REVIEW

SLEEPMODE

SUSPEND

SUSPENDREVIEW

Example

"ACTIVE"

String

Description

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text

Example

"abc123"

SuggestedGoalAmount

Description

Suggested goal amount for the create, fundraiser, and manage pages

Fields

Field Name Description
goalAmount - Decimal The next smart goal amount for the fundraiser
isSmartGoalsDefaultEnabled - Boolean Determines if the smart goals toggle should be enabled by default

Example

{
  "goalAmount": Decimal,
  "isSmartGoalsDefaultEnabled": false
}

SuggestedGoalRequestSource

Values

Enum Value Description

AFTER_DONATION

CREATE

MANAGE

Example

"AFTER_DONATION"

SuggestedGoalType

Values

Enum Value Description

INCREMENTAL_SMART_GOAL

Goal type when fundraiser has donations

INITIAL_SMART_GOAL

Goal type when an existing smart goal doesn't exist

SUGGESTED_GOAL

Goal type for suggesting a projected goal for the fundraiser

Example

"INCREMENTAL_SMART_GOAL"

TShirtSize

Description

Represents a standard T-shirt size

Values

Enum Value Description

L

M

S

XL

XS

Example

"L"

Team

Fields

Field Name Description
createdAt - DateTime
mediaType - MediaType
name - String
nameEncoded - String
publicAttributions - Boolean!
status - TeamStatus!
teamInviteLimit - Int!
teamPicUrl - Url
updatedAt - DateTime

Example

{
  "createdAt": "2007-12-03T10:15:30Z",
  "mediaType": "FACEBOOK_AWS",
  "name": "xyz789",
  "nameEncoded": "abc123",
  "publicAttributions": false,
  "status": "ACTIVE",
  "teamInviteLimit": 123,
  "teamPicUrl": Url,
  "updatedAt": "2007-12-03T10:15:30Z"
}

TeamMember

Description

Information about a team member in a fundraiser

Fields

Field Name Description
amountRaised - Int Total amount raised by this team member in the fundraiser's currency
email - String Email address of the team member
firstName - String First name of the team member
fundId - ID Unique identifier for the fundraiser this team member is associated with
gfmProfileUrl - Url URL to the team member's GoFundMe profile page
id - ID Unique identifier for the team member
lastName - String Last name of the team member
locale - String Locale of the team member in IETF BCP 47 format (e.g., en-US)
numberOfDonationsAttributed - Int Number of donations attributed to this team member
personId - ID Unique identifier for the person associated with this team member
profileUrl - Url URL to the team member's profile picture
role - TeamMemberRole! Role of the team member in the fundraiser (ORGANIZER, BENEFICIARY, or TEAM_MEMBER)
status - TeamMemberStatus! Current status of the team member (INACTIVE, ACTIVE, or ADMIN)
teamId - ID Unique identifier for the team this member belongs to

Example

{
  "amountRaised": 987,
  "email": "abc123",
  "firstName": "abc123",
  "fundId": 4,
  "gfmProfileUrl": Url,
  "id": "4",
  "lastName": "xyz789",
  "locale": "xyz789",
  "numberOfDonationsAttributed": 987,
  "personId": "4",
  "profileUrl": Url,
  "role": "BENEFICIARY",
  "status": "ACTIVE",
  "teamId": "4"
}

TeamMemberRole

Values

Enum Value Description

BENEFICIARY

ORGANIZER

TEAM_MEMBER

Example

"BENEFICIARY"

TeamMemberStatus

Values

Enum Value Description

ACTIVE

ADMIN

INACTIVE

Example

"ACTIVE"

TeamStatus

Values

Enum Value Description

ACTIVE

DELETED

Example

"ACTIVE"

ThankYouAuthor

Description

Details about the author of a thank you message

Fields

Field Name Description
name - String The name of the user who authored the thank you message
profileUrl - Url The profile URL of the user who authored the thank you message
userId - ID The ID of the user who authored the thank you message

Example

{
  "name": "abc123",
  "profileUrl": Url,
  "userId": 4
}

ThankYouCategory

Description

The type of thank you message

Values

Enum Value Description

AUTOMATIC

Message sent automatically by the platform

EMAIL

Message sent manually to the donor

Example

"AUTOMATIC"

Tip

Description

A tip made alongside a donation

Fields

Field Name Description
amount - Money The amount of money given
isRefunded - Boolean Whether the tip has been refunded
refundNote - String The note associated with the tip refund, if the tip was refunded
refundedAt - DateTime The date the refund was created, if the tip was refunded

Example

{
  "amount": Money,
  "isRefunded": false,
  "refundNote": "abc123",
  "refundedAt": "2007-12-03T10:15:30Z"
}

TransactionDetails

Description

Extra details for each different GivingFundTransactionType

Example

GivingFundAcatsContributionDetails

UpdateStatus

Values

Enum Value Description

ACTIVE

DELETED

Example

"ACTIVE"

Upload

Example

Upload

Url

Description

A Url scalar

Example

Url

User

Fields

Field Name Description
activeEducationCards - [EducationCard!]! Gets the list of active education cards for a person. Cards are automatically filtered based on dismissal status and auto-dismissal conditions, then returned sorted by display order
anonymousSupportersCount - AnonymousSupportersCountResponse Count of anonymous Supporters that have interacted with a given Fundraiser
Arguments
fundraiserId - ID!
assignedCountryForPayments - CountryCode

The country in which the user is assigned to create fundraisers and receive payments.

If a user has no fundraisers, then this value will be null, and they may create a fundraiser in any valid country. Once a user has published a fundraiser, this value is set and is not able to be changed.

Publishing a fundraiser sets up payments for that country, and they are assigned to that country moving forward

attributionInfo - AttributionInfo User specific information to aid in attribution for shares, invites, or donations for a fund
Arguments
fundraiserSlug - ID!
birthday - Date Gets birthday for logged in user. The year is ignored and hardcoded to 3000
charityStorylineResponse - CustomPromptResult

User specific information to generate AI-driven charity storyline customized for the current user

Get the response of a charity storyline generation task by its ID. Results are permanently stored per charity

Arguments
taskId - ID!
claimableFundraisers - [Fundraiser] Fundraisers created by a partner that a user can claim
coachingActionItems - [CoachingActionItem!]

List of coaching action items belonging to a user.

This is also known as the user's "Next Best Actions" and is a core feature to the "Next Best Action" project.

The list of action items, when filtered by fundraiserId, are the set of items that appear on the page to manage a fundraiser. These actions guide a user to take certain steps and provide a task list of actions they can take to improve the success of their fundraiser

Arguments
coachingTasksForFundraiser - [CoachingTaskCollection!] List of coaching task collections
Arguments
fundraiserSlug - ID!
coachingTipsForFundraiser - [CoachingTipName!] List of coaching tip names
Arguments
fundraiserSlug - ID!
coachingTipsStreakForFundraiser - Int Number of coaching tips done
Arguments
fundraiserSlug - ID!
communicationFundraiserPreferences - [PersonCommunicationFundraiserPreference] Fundraiser-level communication subscriptions for a logged in user
Arguments
channel - String
consent - PersonConsent
contactRecipients - ContactRecipientConnection List of user contacts recipient data for sharing Fundraisers
Arguments
after - String
before - String
first - Int
last - Int
order - ContactsOrder
contactSupporters - ContactSupporterConnection List of all user contacts who are/could be fundraiser supporters can be shared with. Can be sorted by recent Donor, recent Sharer or recent Viewers
Arguments
after - String
before - String
first - Int
fundraiserId - ID!
last - Int
order - ContactsOrder
contactSupportersCount - ContactSupporterCountResponse Count of contacts supporters that match the provided filters
Arguments
fundraiserId - ID!
country - CountryCode Country of the user
createdAt - DateTime Timestamp of when the viewer was created
createdFundraisers - [Fundraiser!]! The fundraisers that the user has created Use involvedFundraisers query with a filter for ORGANIZER relationship instead.
Arguments
filter - FundraiserFilter
detectedLocation - Location The Location detected for the user based on information in request headers
dismissEducationCard - Boolean Dismisses an education card for a person. This mutation updates the database to mark the card as dismissed
Arguments
card - EducationCard!

The type of education card to dismiss

donation - Donation Donation made by the user
Arguments
encryptedDonationId - String
donations - DonationConnection List of donations for signed-in donors
Arguments
after - String
before - String
first - Int
fundraiserSlug - ID
last - Int
order - DonationOrder
donationsFromShares - DonationConnection List of donations for signed-in users with smart link shares
Arguments
after - String
before - String
first - Int
fundraiserSlug - ID
last - Int
order - DonationOrder
email - EmailInfo Information about the viewer's email and consent to be contacted
firstName - String The users first name
followedCauses - CausesConnection Gets causes that the user follows
Arguments
after - String
before - String
filter - CausesFilter
first - Int
last - Int
givingFund - GivingFund Gets a specific GivingFund by ID for the logged in user
Arguments
id - ID!

The ID of the giving fund to retrieve

givingFundFavorites - [GivingFundFavorite] List of favorites for the logged in user within a giving fund context
Arguments
givingFundId - ID
givingFunds - [GivingFund] Gets a list of GivingFunds for the logged in user
hasInternalPermission - Boolean
Arguments
permission - String
id - ID! The users's Person_id
involvedFundraisers - FundraiserConnection The fundraisers that the user is directly involved with
Arguments
after - String
before - String
filter - FundraiserFilter
first - Int
last - Int
order - FundraiserOrder
isChampion - Boolean! User has created a smart link
lastName - String The users last name
latestWatchlistInquiry - WatchlistInquiry Gets the most recent watchlist inquiry, if one (or more) has been created for the logged in user
locale - String The viewer's language (ex. en_US)
manageDashboardViews - Int

The recorded number of times this user has viewed the "Manage Fundraiser Dashboard", which is the product surface for managing and updating a fundraiser.

Note that this total is fundraiser specific

Arguments
fundraiserId - ID!
marketingConsent - PersonConsent Queries consent for a logged in user
notificationFeed - NotificationActivityConnection The notificationFeed query returns a paginated list of the user's notifications. Querying a notification will implicitly mark that notification as seen
Arguments
after - String
before - String
first - Int
last - Int
order - ActivityOrder
oAuthApplications - [Partner] Applications (oAuth partners) a gofundme user has given access to act on behalf of. This implies this user has consented this partner to take specific api actions via an ephemeral access_token
peopleYouMayKnow - PeopleRecommendations Returns ranked people recommendations with fundraiser context for a logged in user
Arguments
slug - String

Fundraiser slug to get donors of fundraiser context. If not provided, no recommendation is returned

personChatDetails - PersonChatDetails Queries for person chat details for the logged in user
personChatLogin - PersonChatToken Queries for a chat login token for the logged in user
personRolesForFundraiser - PersonRolesForFundraiser!
Arguments
fundraiserSlug - ID!
phone - PhoneInfo Information about the viewer's phone number and consent to be contatcted
profile - Profile The profile of a given user, if they have one
profileUrl - Url
providerConnection - ProviderConnection Retrieve the provider connection for a specific provider
Arguments
provider - ContactProvider!
providerConnections - [ProviderConnection] List of active or previously active connections between the User and a Contact Service provider
socialPlatformPreferences - [SharePlatform!] The social media platforms that the user prefers to use. This is a self-reported setting/preference indicated by the user
status - UserStatus Status of the user
totalDonated - [Money] Total amount donated made by user by currency
Arguments
fundraiserSlug - ID
totalDonatedForACause - [Money] Total amount donated made by user by currency for a cause
Arguments
causeSlug - ID!
totalDonatedFromCauseShares - [Money] Total amount donated from sharing smart links for a cause
Arguments
causeSlug - ID!
totalDonatedFromShares - [Money] Total amount donated from sharing smart links
Arguments
fundraiserSlug - ID
totalDonations - Int Total number of donations made
Arguments
fundraiserSlug - ID
totalDonationsFromShares - Int Total number of donations made from sharing smart links
Arguments
fundraiserSlug - ID
totalDonorsFromShares - Int Total number of donors from sharing smart links
Arguments
fundraiserSlug - ID
totalFundraisersSupported - Int Total number of fundraisers supported
totalFundraisersSupportedForACause - Int Total number of fundraisers supported for a cause
Arguments
causeSlug - ID!
totalInspiredDonationAmounts - [Money] Total amount donated from sharing smart links + donation amount to fundraiser that the person is CO of
Arguments
fundraiserSlug - ID
totalInspiredDonationAmountsForACause - [Money] Total amount donated from sharing smart links + donation amount to fundraiser that the person is CO of for a cause
Arguments
causeSlug - ID!
totalInspiredDonorsCount - Int Total number of donors from sharing smart links + donors to fundraiser that the person is CO of
Arguments
fundraiserSlug - ID
totalInspiredDonorsCountForACause - Int Total number of donors from sharing smart links + donors to fundraiser that the person is CO of for a cause
Arguments
causeSlug - ID!
totalViewsFromShares - Int Total number of views from sharing smart links
Arguments
fundraiserSlug - ID
unseenNotificationCount - Int The number of unseen notifications in the user's notification feed
userId - ID! The users's user_id

Example

{
  "activeEducationCards": ["CHARITABLE_GOAL"],
  "anonymousSupportersCount": AnonymousSupportersCountResponse,
  "assignedCountryForPayments": "US",
  "attributionInfo": AttributionInfo,
  "birthday": "2007-12-03",
  "charityStorylineResponse": CustomPromptResult,
  "claimableFundraisers": [Fundraiser],
  "coachingActionItems": [CoachingActionItem],
  "coachingTasksForFundraiser": [CoachingTaskCollection],
  "coachingTipsForFundraiser": ["GOAL_ADJUST_10"],
  "coachingTipsStreakForFundraiser": 987,
  "communicationFundraiserPreferences": [
    PersonCommunicationFundraiserPreference
  ],
  "consent": PersonConsent,
  "contactRecipients": ContactRecipientConnection,
  "contactSupporters": ContactSupporterConnection,
  "contactSupportersCount": ContactSupporterCountResponse,
  "country": "US",
  "createdAt": "2007-12-03T10:15:30Z",
  "createdFundraisers": [Fundraiser],
  "detectedLocation": Location,
  "dismissEducationCard": true,
  "donation": Donation,
  "donations": DonationConnection,
  "donationsFromShares": DonationConnection,
  "email": EmailInfo,
  "firstName": "abc123",
  "followedCauses": CausesConnection,
  "givingFund": GivingFund,
  "givingFundFavorites": [GivingFundFavorite],
  "givingFunds": [GivingFund],
  "hasInternalPermission": false,
  "id": "4",
  "involvedFundraisers": FundraiserConnection,
  "isChampion": true,
  "lastName": "xyz789",
  "latestWatchlistInquiry": WatchlistInquiry,
  "locale": "xyz789",
  "manageDashboardViews": 987,
  "marketingConsent": PersonConsent,
  "notificationFeed": NotificationActivityConnection,
  "oAuthApplications": [Partner],
  "peopleYouMayKnow": PeopleRecommendations,
  "personChatDetails": PersonChatDetails,
  "personChatLogin": PersonChatToken,
  "personRolesForFundraiser": PersonRolesForFundraiser,
  "phone": PhoneInfo,
  "profile": Profile,
  "profileUrl": Url,
  "providerConnection": ProviderConnection,
  "providerConnections": [ProviderConnection],
  "socialPlatformPreferences": ["Copy_Link"],
  "status": "ACTIVE",
  "totalDonated": [Money],
  "totalDonatedForACause": [Money],
  "totalDonatedFromCauseShares": [Money],
  "totalDonatedFromShares": [Money],
  "totalDonations": 123,
  "totalDonationsFromShares": 987,
  "totalDonorsFromShares": 987,
  "totalFundraisersSupported": 123,
  "totalFundraisersSupportedForACause": 987,
  "totalInspiredDonationAmounts": [Money],
  "totalInspiredDonationAmountsForACause": [Money],
  "totalInspiredDonorsCount": 123,
  "totalInspiredDonorsCountForACause": 987,
  "totalViewsFromShares": 123,
  "unseenNotificationCount": 987,
  "userId": 4
}

UserComment

Description

A user-generated comment on an activity

Fields

Field Name Description
actor - Actor The actor who created the comment
content - String The text content of the comment
createdAt - DateTime When the comment was created
feedId - ID The feed ID that the comment was created under (if applicable)
id - ID!
isDeleted - Boolean Whether the comment has been deleted
moderationStatus - UserPostModerationStatus Current moderation status
parentCommentId - ID Optional parent comment for threaded comments / replies
personOnBehalfOf - User Optional person who commented on behalf of an entity (for ACL)
targetId - ID! The target where the post lives (Activity, etc.)
targetType - UserCommentTargetType! The type of target where the comment lives (Activity, etc.)
updatedAt - DateTime When the comment was last updated

Example

{
  "actor": Anonymous,
  "content": "abc123",
  "createdAt": "2007-12-03T10:15:30Z",
  "feedId": 4,
  "id": "4",
  "isDeleted": true,
  "moderationStatus": "APPROVED",
  "parentCommentId": "4",
  "personOnBehalfOf": User,
  "targetId": 4,
  "targetType": "ACTIVITY",
  "updatedAt": "2007-12-03T10:15:30Z"
}

UserCommentConnection

Description

Connection type for paginated activity comments

Fields

Field Name Description
edges - [UserCommentEdge]
pageInfo - PageInfo!
totalCount - Int Total count of comments (for approved comments only)

Example

{
  "edges": [UserCommentEdge],
  "pageInfo": PageInfo,
  "totalCount": 987
}

UserCommentEdge

Description

Edge type for activity comment connections

Fields

Field Name Description
cursor - String
node - UserComment

Example

{
  "cursor": "abc123",
  "node": UserComment
}

UserCommentTargetType

Description

Target types for user comments

Values

Enum Value Description

ACTIVITY

FUNDRAISER

Example

"ACTIVITY"

UserError

Description

Represents a fixable error that occurred during the execution of a mutation, such as failed validation. Each UserError provides context about the error, making it possible to identify which part of the user input caused the failure, and to display a meaningful message to the end-user

Fields

Field Name Description
field - String Specifies the input field associated with the error. This name corresponds to the field names as defined in the GraphQL input types. If the error is not specific to a single field but rather to the operation as a whole, this can be left empty
message - String! A human-readable explanation of the error. This message can be displayed directly to the end-users to inform them about what went wrong and potentially how to fix it

Example

{
  "field": "xyz789",
  "message": "xyz789"
}

UserPost

Description

A user-generated content post

Fields

Field Name Description
actor - Actor The actor who created the post
content - String The text content of the post
createdAt - DateTime When the post was created
id - ID!
isDeleted - Boolean Whether the post has been deleted
moderationStatus - UserPostModerationStatus Current moderation status
personOnBehalfOf - User Optional person who posted on behalf of an entity (for ACL)
target - UserPostTarget The target where the post lives (Profile, Fundraiser, etc.)
updatedAt - DateTime When the post was last updated

Example

{
  "actor": Anonymous,
  "content": "xyz789",
  "createdAt": "2007-12-03T10:15:30Z",
  "id": "4",
  "isDeleted": true,
  "moderationStatus": "APPROVED",
  "personOnBehalfOf": User,
  "target": Cause,
  "updatedAt": "2007-12-03T10:15:30Z"
}

UserPostConnection

Description

Connection type for paginated UGC posts

Fields

Field Name Description
edges - [UserPostEdge]
pageInfo - PageInfo!
totalCount - Int Total count of posts (for approved posts only)

Example

{
  "edges": [UserPostEdge],
  "pageInfo": PageInfo,
  "totalCount": 123
}

UserPostEdge

Description

Edge type for UGC post connections

Fields

Field Name Description
cursor - String
node - UserPost

Example

{
  "cursor": "abc123",
  "node": UserPost
}

UserPostModerationStatus

Description

Moderation status for UGC content

Values

Enum Value Description

APPROVED

FLAGGED

PENDING

REJECTED

Example

"APPROVED"

UserPostOrder

Description

Ordering options for UGC posts

Values

Enum Value Description

CREATED_AT_ASC

CREATED_AT_DESC

Example

"CREATED_AT_ASC"

UserPostTarget

Description

Targets where UGC posts can be created

Types

Union Types

Cause

Charity

Fundraiser

Profile

Example

Cause

UserStatus

Values

Enum Value Description

ACTIVE

User is active

INACTIVE

User is inactive

Example

"ACTIVE"

WatchlistInquiry

Description

The inquiry represents a single instance of an individual attempting to verify their identity. Inquiries are created when the individual begins to verify their identity

Fields

Field Name Description
id - ID! The id of the inquiry
reports - [WatchlistReport!] The reports associated with this inquiry
status - WatchlistInquiryStatus The status of the overall flow of attempting to verify their identity
verifications - [WatchlistVerification!] The verifications associated with this inquiry

Example

{
  "id": 4,
  "reports": [WatchlistReport],
  "status": "APPROVED",
  "verifications": [WatchlistVerification]
}

WatchlistInquiryStatus

Description

The status of a watchlist inquiry. Watchlist inquiries may be abandoned by people during the process, which may result in an incomplete state, like PENDING, CREATED, or EXPIRED

Values

Enum Value Description

APPROVED

The individual passed all verifications or their Case was reviewed and approved by an agent

COMPLETED

The individual passed all required verifications within the inquiry

CREATED

The individual started the inquiry

DECLINED

An agent has reviewed their Case and has declined it

EXPIRED

The individual did not complete the inquiry within the configured expiration interval (24 hours by default)

FAILED

The individual exceeded the allowed number of verification attempts on the inquiry and cannot continue

NEEDS_REVIEW

The individual did not pass all verifications and a Case has been opened for review

PENDING

The individual submitted a verification within the inquiry

Example

"APPROVED"

WatchlistReport

Description

A watchlist report is the result of checking an individual against several different lists, e.g. a government watchlist, to see if they appear on any one of them

Fields

Field Name Description
hasMatch - Boolean

The main result/conclusion of a watchlist report, represented as a boolean. A true value means the information provided to create this report resulted in a watchlist match, or a lookup "hit". A false value means there was NO watchlist match. A null value means the report is still processing or errored out.

So, true is "bad" (the person appears on a watchlist), and false is "good" (the person does not appear on a watchlist)

id - ID! The unique id of the watchlist report

Example

{"hasMatch": false, "id": "4"}

WatchlistVerification

Description

A WatchlistVerification enables GoFundMe to answer "Is this person who they claim to be?". The verification process is accomplished through the generation and processing of checks against the information provided by the individual

Fields

Field Name Description
id - ID! The id of the verification
status - WatchlistVerificationStatus The status of the verification
type - String

The manner in which verification was performed. See docs at https://docs.withpersona.com/reference/retrieve-a-verification for verification types.

Some examples are: "verification/government-id", "verification/phone-number", "verification/selfie", etc

Example

{
  "id": "4",
  "status": "CONFIRMED",
  "type": "abc123"
}

WatchlistVerificationStatus

Description

Enum representing the various states of a verification process

Values

Enum Value Description

CONFIRMED

Verification has been confirmed. This is a status specific to PhoneNumber verifications where they have verified a confirmation code that was entered

FAILED

Verification has failed. Some or all of the required checks have failed and verification has failed

INITIATED

Verification has started, claimed information can now be sent and saved to the server for verification

PASSED

Verification has passed. The required checks have passed and the information is verified

REQUIRES_RETRY

Verification requires a resubmission. The checks could not be fully processed due to issues with the submitted information

SUBMITTED

Verification has been submitted, the claimed information is frozen and the server will process the verification

Example

"CONFIRMED"